awk 正则表达式

– Start
如果你还不知道什么是正则表达式或者不是很清楚,请先阅读正则表达式精萃

awk 支持如下元字符。

\a       响铃
\b       退格
\f       换页
\n       换行
\r       回车
\t       水平制表符
\v       垂直制表符
\ddd     8进制数字
\xhex    16进制数字
\\       反斜线
[abc]    匹配a或b或c
[^abc]   匹配abc之外的任何单个字符
[a-zA-Z] 匹配a到z或A到Z的任何单个字符
\w       组成单词的字符,等价于[a-zA-Z_0-9]
\W       不是组成单词的字符,等价于[^\w]
\y       单词边界
\B       非单词边界
\<       单词的起始位置
\>       单词的结束位置
.        任何字符,包括换行符
^        字符串首
$ 字符串行尾 a|b|c 匹配a或b或c X? 匹配X 0次或1次 X* 匹配X 0次或无数次 X+ 匹配X 1次或无数次 X{n} 匹配X n次 X{n,} 匹配X 至少n次 X{n,m} 匹配X 至少n次至多m次. 需要指定 --re-interval (...) 分组或捕获

上面介绍的正则表达式有个缺陷,它只能匹配英语,如果你想匹配其他语言,你可以使用标准的 POSIX 语法,如下。

[[:alnum:]]             字母和数字  
[[:alpha:]]             字母  
[[:lower:]]             小写字母  
[[:upper:]]             大写字母  
[[:digit:]]             数字  
[[:blank:]]             空格和制表符  
[[:space:]]             空白字符  
[[:graph:]]             非空白字符  
[[:print:]]             类似[[:graph:]],但是包含空白字符  
[[:punct:]]             标点符号  
[[:cntrl:]]             控制字符  
[[:xdigit:]]            十六进制中容许出现的数字(例如 0-9a-fA-f) 
[. xx .]                将 xx 作为一个整体匹配, xx 可以是任何字母  
[= e =]                 认为等价,在法语中匹配 e, è, 或 é  

– 更多参见:awk 精萃
– 声 明:转载请注明出处
– Last Updated on 2015-10-28
– Written by ShangBo on 2015-10-28
– End

你可能感兴趣的:(awk 正则表达式)