正则表达式

什么是正则表达式

正则表达式,又称正规表示法常规表示法(英语:*Regular Expression*,在代码中常简写为*regex、regexp*或*RE*),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。

正则表达式可以对字符串进行查找,提取,分割,替换等操作。

创建正则表达式

正则表达式就是一个用于匹配字符串的模板,可以匹配一串字符串,所以创造正则表达式就是创建一个特殊字符串。

正则表达式所支持的合法字符

字符 解释
x 字符x(x可代表任何合法的字符)
\0mnn 八进制数用\0mnn
\xhh 十六进制值0xhh所表示的字符
\xhhh 十六进制值0xhhhh所表示的Unicode字符
\t 制表符(’\u0009’)
\n 新行(换行)符(‘\u000A’)
\r 回车符(’\u000D’)
\f 换页符(’\u000C’)
\a 报警(bell)符(’\u0007’)
\e Escape符(’\u001B’)
\cx x对应的控制符。例如,\cM 匹配ctrl-M。x值必须为A-Z或者a~z之一

正则表达式中的特殊字符

特殊字符 说明
$ 匹配一行的结尾。要匹配\$字符本身
^ 匹配一行的开头。要匹配^字符本身
() 标记子表达式的开始和结束位置。要用匹配这些字符。
[] 用于确定中括号表达式的开始和结束位置。
{} 用于标记前面子表达式的出现频率
* 指定前面子表达式出现零次或多次
+ 指定前面子表达式可以出现一次或多次
? 指定前面子表达式可以出现零次或一次
. 匹配除换行符\n之外的任何单字符
\ 用于转义下一个字符,或指定八进制,十六进制字符。
|指定两项之间任选一项