grep使用正则表达式进行匹配时,将大大提高效率和精准性,正则表达式概括分为基本正则表达式和扩展正则表达式。
一、基本正则表达式
字符匹配元字符
. #点号匹配任意单个字符 [] #区配中括号内的任意单个字符 [^] #对中括号内的字符取反, [:digit:] #任意数据,相当于0-9 [:lower:] #任意小写字母 [:upper:] #任意大写字母 [:alpha:] #任意大小写字终 [:alnum:] #任意数字或字母 [:punct:] #任意标点符号 [:space:] #任意空白字符
区配次数元字符,作用:指定前面字符要出现的次数,只表示次数
* #任意次,如.*表示任意字符任意次 \? #0次或1次, \+ #至少1次 \{m\} #m次 \{m,n\} #至少m次,最多n次,\{0,n\}表示最多匹配n次,\{m,\}表示至少匹配m次
位置锚定
^ #锚定行首 $ #锚定行尾 \<或\b #锚定词首 \>或\b #锚定词尾
分组:将一个或多个字符,作为一个整体,并且被匹配到的字符,可以使用\1,\2进行引用
\(***\) #***代表字符
二、扩展正则表达式
扩展正则表达式使用grep -E
字符匹配元字符
. [] [^]
次数匹配
* ? + {m} {m,n}
位置锚定
#跟标准正则式一致
分组及后向引用
() #分组 \1 #对匹配内容进行引用
原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/21097