Shell 正则表达式

以/usr/share/dict$中的words文件为例。

eg1 :    egrep "^a.*t$" words | wc -w   意思是,查找以a开头,t结尾的任意字符串,并wc来统计字数。其中,^a表示以a开关的字符,.表示匹配任一一个字符,*表示将前面的字符匹配任意次数可以为0次也可以为多次,.* 结合起来的意思是匹配任何字符然后匹配任意多次,t$表示以t结尾

 

eg2: egrep "\<.at\>" words   意思是,匹配以为后续at前面接任一字符的一个单词。

 

eg3: egrep ".at" words  ,意思是,匹配以后续为at,前面接任一字符的字符串。

 

eg4: egrep "[abcdefg]at words",意思是,匹配以abcdefg为字符集的后面接at的字符串,如ddfafaat,fafebat,fdafcat,fadfdat等等。

 

eg5: egrep "\<[abcdefg]at\> words" ,意思是,匹配以abcdefg为字符集后面接at的单词,如bat,dat等。

 

eg6: egrep "^[[:upper:]]t$" words 意思是,匹配以大写字母为开关,t结尾的字符。

posted @ 2014-04-26 12:19  狂师  阅读(256)  评论(0编辑  收藏  举报