linux-正则表达式

(转)正则表达式总结

模式修饰符的可选参数

参数

含义

i

忽略大小写

g

全局匹配

m

多行匹配 

举例:/test/ig 

字符类:单个字符和数字

元字符/元符号

匹配情况

.

匹配除换行符外的任意字符

[a-z0-9]

匹配括号中的字符集中的任意字符

[^a-z0-9]

匹配任意不在括号中的字符集中的任意字符

d

匹配数字

D

匹配非数字,同[^0-9]

w

匹配字母和数字及_

W

匹配非字母和数字及_

 

字符类:空白字符

元字符/元符号

匹配情况

匹配null字符



匹配空格字符

f

匹配进纸字符

匹配换行符

匹配回车字符

匹配制表符

s

匹配空白字符、空格、制表符和换行符

S

匹配非空白字符

 

字符类:锚字符

元字符/元符号

匹配情况

^

行首匹配

$

行尾匹配

A

只有匹配字符串开始处



匹配单词边界,词在[]内时无效

B

匹配非单词边界

G

匹配当前搜索的开始位置



匹配字符串结尾处或行尾

z

只匹配字符串结束处

 

字符类:重复字符

元字符/元符号

匹配情况

x?

匹配0个或1个x

x*

匹配0个或任意多个x

x+

匹配至少一个x

(xyz)+

匹配至少一个(xyz)

x{m,n}

匹配最少m个,最多n个x

 

字符类:替代字符

元字符/元符号

匹配情况

this|where|logo

匹配this或where或logo中任意一个

 

字符类:记录字符

元字符/元符号

匹配情况

(string)

用于反向引用的分组

1或$1

匹配第一个分组中的内容

2或$2

匹配第二个分组中的内容

3或$3

匹配第三个分组中的内容

 

贪婪

惰性

+

+?

?

??

*

*?

{n}

{n}?

{n,}

{n,}?

{n,m}

{n,m}?

原文地址:https://www.cnblogs.com/jiangtao1218/p/9433784.html