linux 中正则 表达式

 

001、位置锚定(开头或者结尾):

 ^:  表示锚定开头

$:表示锚定结尾

\<:表示匹配单词的开端

\>:表示匹配单词的结尾

\<word\>:表示匹配完整的单词

 

002、匹配次数1

.: 当个.表示匹配任意字符1次

?: 表示匹配前一个字符0次或者1次

+:表示匹配前一个字符一次或者多次

*:表示匹配前一个字符0次或者任意次

.*:表示匹配任意字符任意次数。

\{m\}:表示匹配前面的字符m次

\{m,n\}:表示匹配前面的字符至少m次,至多n次

\{m,\}:表示匹配前面的字符至少m次,多则不限

\{,m\}:匹配至多m次 

 

003、分组

\(xxx\)\(yyy\): 表示两个分组xxx和yyy

\2:表示第二个分组

 

004、特殊符号

[xyz]:表示匹配[]中的任意字符

[^xyz]:表示取反

[0-9]:表示匹配数值

[a-z]:表示匹配小写字母

[:lower:]:表示匹配小写字母

[A-Z]:表示匹配大写字母

[:upper:]:表示匹配大写字母

[a-Z]:表示匹配所有的字母

[0-Z]:表示匹配数字和字母

[0-9a-zA-Z]:表示匹配所有数字和字母

[:num:]:表示匹配数值

[:alpha:]:表示匹配字母

[:digit:]:表示匹配所有的数字

[:punct:]:表示匹配标点符号

[:blank:]:表示匹配空白字符

[:space:]:表示匹配空白字符

 

005、特殊符号

|:表示或者

\:表示转义

 

实例: 正则表达式匹配IP:

ifconfig | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}' : ##[0-9]中的任意数字至少1次, 至多3次;?

 

 

 

 

参考:

01、https://www.cnblogs.com/reachos/p/16808669.html

02、https://www.cnblogs.com/xiejunjie8888/p/15713396.html

 

posted @ 2023-09-21 22:20  小鲨鱼2018  阅读(87)  评论(0编辑  收藏  举报