深入浅出 Hyperscan:高性能正则表达式算法原理与设计
上QQ阅读APP看书,第一时间看更新

第1章 正则表达式简介

正则表达式是为了匹配特定的字符串而定义的描述字符串特征的模式,通常用于查找、替换符合特征的字符串,或者用来验证某个字符串是否符合指定的特征。

正则表达式最初的想法源于1940年,神经生理学家Warren McCulloch与Walter Pitts 研究出了一种用数学方式来描述神经网络的模型,他们将神经系统 中的神经元描述成小而简单的自动控制元。1951年,数学家Stephen Kleene利用被他称为“正则集合”的数学符号来描述此模型,这种表达式称为“正则表达式”,正则表达式从此成为现实。之后1968年,UNIX操作系统之父Ken Thompson将这套符号系统引入了他的文本编辑器qed,这种编辑器后来成了UNIX ed编辑器的基础,并由ed将正则表达式引入了grep。自此以后,正则表达式被广泛地应用到各种UNIX操作系统或类UNIX操作系统中。

正则表达式是一种强大、便捷、高效的文本处理工具,其赋予了使用者描述和分析文本的能力。从更高的层面上来说,正则表达式允许使用者掌控自己的数据为自己服务[1]。掌握正则表达式,就是掌握自己的数据。接下来就让我们来了解一下正则表达式的相关知识。