系统相关
首页 > 系统相关> > Linux之正则表达式(Regular expression)

Linux之正则表达式(Regular expression)

作者:互联网

基本正则表达式

字符匹配

符号作用
.匹配单个任意字符
[ ]匹配指定范围内的任意单个字符
[^]匹配指定范围外的任意单个字符
[:digit:]数字
[[:digit:]]匹配范围外的任意数字
[[:lower:]]小写字母
[[:upper:]]大写字母
[[:alpha:]]字母

匹配次数

符号意义
*匹配其前面的字符任意次:0,1,多次
.*匹配任意长度的任意字符
?匹配前面字符1次或者0次;即其前面的字符是可有可无的
+其前字符至少出现1次
{m}其前的字符出现m次
{m,n}匹配前面字符至多m次,至少n次
{x,n}至少x次,至多n次
{m,y}至少m次,至多y次

位置锚定

符号意义
^行首锚定 grep ^r…t /etc/passwd
$行尾锚定 grep bash$ /etc/passwd
^$空行,空白行 或者 1$:
\ < 或 \b词首锚定 grep “ \ <root ” /etc/passwd
\ >或 \b词尾锚定 grep “root \ > ” /etc/passwd
\ <PATTERN \ >匹配完整单词;Grep" \ < root\ >"/etc/passwd

分组和引用

符号意义
()将一个或多个字符捆绑在一起,当作一个整体进行处理括号内的模式匹配到的字符会被记录于正则表达式引擎的内部变量中
()ab\1模式从左侧起,第一个左括号以及与之匹配的右括号之间的模式所匹配到的字符
()ab\2模式从左侧起,第二个左括号以及与之匹配的右括号之间的模式所匹配到的
aIba或者b

() :
(xy)ab
(xy)(zd)ab\1, \2
(xy)是第一组
(zd)是第二组
\1 的意思是匹配第一组
\2的意思是匹配第二组

标签:字符,ab,匹配,任意,括号,Regular,锚定,Linux,expression
来源: https://blog.csdn.net/Fpsmumu/article/details/110434260