linux shell 正则表达式(BREs,EREs,PREs)差异比较(4)

\cx

  匹配由 x 指明的控制字符,例如:\cM匹配一个Control-M 或回车符,x 的值必须为A-Z 或 a-z 之一,否则,将 c 视为一个原义的 'c' 字符   不支持   不支持       \cx  

\xn

  匹配 n,其中 n 为十六进制转义值。十六进制转义值必须为确定的两个数字长,例如:'\x41' 匹配 "A"。'\x041' 则等价于'\x04' & "1"。正则表达式中可以使用 ASCII 编码   不支持   不支持       \xn  

\num

  匹配 num,其中 num是一个正整数。表示对所获取的匹配的引用   不支持   \num   \num      
[:alnum:]   匹配任何一个字母或数字([A-Za-z0-9]),例如:'[[:alnum:]] '   [:alnum:]   [:alnum:]   [:alnum:]   [:alnum:]  
[:alpha:]   匹配任何一个字母([A-Za-z]), 例如:' [[:alpha:]] '   [:alpha:]   [:alpha:]   [:alpha:]   [:alpha:]  
[:digit:]   匹配任何一个数字([0-9]),例如:'[[:digit:]] '   [:digit:]   [:digit:]   [:digit:]   [:digit:]  
[:lower:]   匹配任何一个小写字母([a-z]), 例如:' [[:lower:]] '   [:lower:]   [:lower:]   [:lower:]   [:lower:]  
[:upper:]   匹配任何一个大写字母([A-Z])   [:upper:]   [:upper:]   [:upper:]   [:upper:]  
[:space:]   任何一个空白字符: 支持制表符、空格,例如:' [[:space:]] '   [:space:]   [:space:]   [:space:]   [:space:]  
[:blank:]   空格和制表符(横向和纵向),例如:'[[:blank:]]'ó'[\s\t\v]'   [:blank:]   [:blank:]   [:blank:]   [:blank:]  
[:graph:]   任何一个可以看得见的且可以打印的字符(注意:不包括空格和换行符等),例如:'[[:graph:]] '   [:graph:]   [:graph:]   [:graph:]   [:graph:]  
[:print:]   任何一个可以打印的字符(注意:不包括:[:cntrl:]、字符串结束符'\0'、EOF 文件结束符(-1), 但包括空格符号),例如:'[[:print:]] '   [:print:]   [:print:]   [:print:]   [:print:]  

[:cntrl:]

  任何一个控制字符(ASCII 字符集中的前 32 个字符,即:用十进制表示为从 0 到31,例如:换行符、制表符等等),例如:' [[:cntrl:]]'  

[:cntrl:]

 

[:cntrl:]

 

[:cntrl:]

 

[:cntrl:]

 
[:punct:]   任何一个标点符号(不包括:[:alnum:]、[:cntrl:]、[:space:]这些字符集)   [:punct:]   [:punct:]   [:punct:]   [:punct:]  
[:xdigit:]   任何一个十六进制数(即:0-9,a-f,A-F)   [:xdigit:]   [:xdigit:]   [:xdigit:]   [:xdigit:]  

四、三种不同类型正则表达式比较

复制代码 代码如下:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wfyypy.html