分类:
2008-12-01 23:24:33
正则表达式(:Regular Expression),在中,是指一个用来描述或者匹配一系列符合某个规则的的单个字符串。在很多或其他工具裡,正則表达式通常被用来检索和/或替换那些符合某个模式的文本内容。许多都支持利用正則表达式进行字符串操作。例如,在中就内建了一个功能强大的正則表达式引擎。正則表达式这个概念最初是由中的工具软件(例如和)普及开的。“正则表达式”通常缩写成“regex”,有regexp、regex,有regexps、regexes、regexen。
目前,正则表达式已经在很多软件中得到广泛的应用,包括*nix(Linux, Unix等),HP等操作,PHP,C#,Java等开发环境,以及很多的应用软件中,都可以看到正则表达式的影子。
正则表达式的使用,可以通过简单的办法来实现强大的功能。为了简单有效而又不失强大,造成了正则表达式代码的难度较大,学习起来也不是很容易,所以需要付出一些努力才行,入门之后参照一定的参考,使用起来还是比较简单有效的。
正则表达式的“祖先”可以一直上溯至对人类神经如何工作的早期研究。Warren McCulloch 和 Walter Pitts 这两位神经生理学家研究出一种数学方式来描述这些神经网络。
1956 年, 一位叫 Stephen Kleene 的数学家在 McCulloch 和 Pitts 早期工作的基础上,发表了一篇标题为“神经网事件的表示法”的论文,引入了正则表达式的概念。正则表达式就是用来描述他称为“正则集的代数”的表达式,因此采用“正则表达式”这个术语。
随后,发现可以将这一工作应用于使用 Ken Thompson 的计算搜索算法的一些早期研究,Ken Thompson 是 Unix 的主要发明人。正则表达式的第一个实用应用程序就是 Unix 中的 qed 编辑器。