perl 之 正则表达式 (简)

时间:2022-12-03 19:16:17

正则表达式,简单介绍:

元字符 匹配项
字符类:单字符与数字  
. 匹配除换行符之外的任意字符
[a-z0-9] 匹配集中任意单字符
[^a-z0-9] 匹配不在集合中的任意单字符
\d 匹配单个数字
\D 匹配非数字字符,等效于[^0-9]
\w 匹配数字型的(字)字符
\W 匹配非数字型的(非字)字符
字符类:空白字符  
\s 匹配空白字符,如空格、制表符和换行符
\S 匹配非空白字符
\n 匹配换行符
\r 匹配回车符
\t 匹配制表符
\f 匹配进纸符
\b 匹配退格符
\0 匹配空值字符
字符类:锚定字符  
\b 匹配字边界(不在[]中时)
\B 匹配非字边界
^ 匹配行首
$ 匹配行尾
\A 匹配字符串开头
\Z 匹配字符串或行的末尾
\z 只匹配字符串末尾
\G 匹配前一次m//g离开之处
字符类:重复字符  
x? 匹配0或1个x
x* 匹配0或多个x
x+ 匹配1或多个x
(xyz)+ 匹配1或多个模式xyz
x(m,n) 匹配m到n个x组成的值
字符类:替换字符  
was|were|will 匹配was、were、will之一
字符类:记忆字符  
(string) 用于反向引用
\1或$1 匹配第一组括号
\2或$2 匹配第二组括号
\3或$3 匹配第三组括号
字符类:其他字符  
\12 匹配八进制数,直到\377
\x811 匹配十六进制数值
\cX 匹配控制字符。譬如\cC指的是Ctrl-C,\cV指的是Ctrl-V
\e 匹配ASCII编码中的ESC符(取消),而非反斜杠
\E 标识使用\U、\L或\Q的大小写更改操作的结束位置
\I 只小写下一个字符
\L 小写字符,直到字符串末尾或碰到\E
\N 匹配已命名的字符,如\N{greek:Beta}
\p{PROPERTY} 匹配拥有已命名属性的任意字符,譬如\p{IsAlpha}/
\Q 引用\E之前的元字符
\u 只大写下一个字符
\U 大写字符,直到字符串末尾或碰到\E
\x{NUMBER} 匹配以十六进制形式给出的Unicode编码NUMBER
\X 匹配Unicode编码“组合字符序列”字符串
[ 匹配元字符