文档介绍:: .
lter Pitts 这两位神经生理学家研究出一种数学方式来描述这些神经网络。
1956 年, 一位叫 Stephen Kleene 的数学家在 McCulloch 和 Pitts 早期工作的基础上,发表
了一篇标题为"神经网事件的表示法"的论文,引入了正则表达式的概念。正则表达式就是用
来描述他称为"正则集的代数"的表达式,因此采用"正则表达式"这个术语。
随后,发现可以将这一工作应用于使用 Ken Thompson 的计算搜索算法的一些早期研究,
Ken Thompson 是 Unix 的主要发明人。正则表达式的第一个实用应用程序就是 Unix 中的
qed 编辑器。
如他们所说,剩下的就是众所周知的历史了。从那时起直至现在正则表达式都是基于文本的
编辑器和搜索工具中的一个重要部分。
应用领域
目前,正则表达式已经在很多软件中得到广泛的应用,包括*nix(Linux, Unix 等),HP 等操
作系统,PHP,C#,Java 等开发环境,以及很多的应用软件中,都可以看到正则表达式的影
子。
Java 正则表达式
在我们的 Java 教程中,Java 正则表达式 这一章节专门介绍了有关 Java 正则表达式的知识。C# 正则表达式
在我们的 C# 教程中,C# 正则表达式 这一章节专门介绍了有关 C# 正则表达式的知识。
Python 正则表达式
在我们的 Python 基础教程中,Python 正则表达式 这一章节专门介绍了有关 Python 正则
表达式的知识。
JavaScript 正则表达式
在我们的 JavaScript 教程中,JavaScript RegExp 对象 这一章节专门介绍了有关 JavaScript 正
则表达式的知识,同时我们还提供了完整的 JavaScript RegExp 对象参考手册。
正则表达式 - 语法
正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含
有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。
列目录时, dir *.txt 或 ls *.txt 中的*.txt 就不是一个正则表达式,因为这里*与正则式
的*的含义是不同的。
构造正则表达式的方法和创建数学表达式的方法一样。也就是用多种元字符与运算
符可以将小的表达式结合在一起来创建更大的表达式。正则表达式的组件可以是单
个的字符、字符集合、字符范围、字符间的选择或者所有这些组件的任意组合。
正则表达式是由普通字符(例如字符 a 到 z)以及特殊字符(称为"元字符")组成的文字
模式。模式描述在搜索文本时要匹配的一个或多个字符串。正则表达式作为一个模板,将某
个字符模式与所搜索的字符串进行匹配。
普通字符
普通字符包括没有显式指定为元字符的所有可打印和不可打印字符。这包括所有大写和小写
字母、所有数字、所有标点符号和一些其他符号。
非打印字符
非打印字符也可以是正则表达式的组成部分。下表列出了表示非打印字符的转义序列:
字符 描述
\cx 匹配由 x 指明的控制字符。例如, \cM 匹配一个 Control-M 或回车符。
x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 'c' 字符。\f 匹配一个换页符。等价于 \x0c 和 \cL。
\n 匹配一个换行符。等价于