grep中利用"\d"匹配数字不乐成的原因办理(3)

[^xyz]

  负值字符荟萃,匹配未包括的任意一个字符(留意:不包罗换行符),譬喻:'[^abc]' 可以匹配 "Lay" 中的'L'(留意:[^xyz]在awk 指令中则是匹配未包括的任意一个字符+换行符)   [^xyz]   [^xyz]   [^xyz]   [^xyz]  
[A-Za-z]   匹配大写字母可能小写字母中的任意一个字符(留意:要写成递增)   [A-Za-z]   [A-Za-z]   [A-Za-z]   [A-Za-z]  
[^A-Za-z]   匹配除了大写与小写字母之外的任意一个字符(留意:写成递增)   [^A-Za-z]   [^A-Za-z]   [^A-Za-z]   [^A-Za-z]  

\d

  匹配从 0 到 9 中的任意一个数字字符(等价于 [0-9])   不支持   不支持   \d   \d  

\D

  匹配非数字字符(等价于 [^0-9])   不支持   不支持   \D   \D  
\S   匹配任何非空缺字符(等价于[^\f\n\r\t\v])   不支持   不支持   \S   \S  
\s   匹配任何空缺字符,包罗空格、制表符、换页符等等(等价于[ \f\n\r\t\v])   不支持   不支持   \s   \s  
\W  

匹配任何非单词字符 (等价于[^A-Za-z0-9_])

  \W   \W   \W   \W  
\w   匹配包罗下划线的任何单词字符(等价于[A-Za-z0-9_])   \w   \w   \w   \w  
\B   匹配非单词界线,譬喻:'er\B' 能匹配 "verb" 中的'er',但不能匹配"never" 中的'er'   \B   \B   \B   \B  

\b

  匹配一个单词界线,也就是指单词和空格间的位置,譬喻: 'er\b' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的'er'   \b   \b   \b   \b  
\t   匹配一个横向制表符(等价于 \x09和 \cI)   不支持   不支持   \t   \t  
\v   匹配一个垂直制表符(等价于 \x0b和 \cK)   不支持   不支持   \v   \v  
\n   匹配一个换行符(等价于 \x0a 和\cJ)   不支持   不支持   \n   \n  
\f   匹配一个换页符(等价于\x0c 和\cL)   不支持   不支持   \f   \f  
\r   匹配一个回车符(等价于 \x0d 和\cM)   不支持   不支持   \r   \r  
\\   匹配转义字符自己"\"   \\   \\   \\   \\  

\cx

  匹配由 x 指明的节制字符,譬喻:\cM匹配一个Control-M 或回车符,x 的值必需为A-Z 或 a-z 之一,不然,将 c 视为一个原义的 'c' 字符   不支持   不支持     \cx  

\xn

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

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

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