元字符(meta character)是一种Perl风格的正则表达式,只有一部分文本处理工具支持它,并不是所有的文本处理工具都支持。
正则表达式 描述 示例\b 单词边界 \bcool\b 匹配cool,不匹配coolant
\B 非单词边界 cool\B 匹配coolant,不匹配cool
\d 单个数字字符 b\db 匹配b2b,不匹配bcb
\D 单个非数字字符 b\Db 匹配bcb,不匹配b2b
\w 单个单词字符(字母、数字与_) \w 匹配1或a,不匹配&
\W 单个非单词字符 \W 匹配&,不匹配1或a
\n 换行符 \n 匹配一个新行
\s 单个空白字符 x\sx 匹配x x,不匹配xx
\S 单个非空白字符 x\S\x 匹配xkx,不匹配xx
\r 回车 \r 匹配回车
\t 横向制表符 \t 匹配一个横向制表符
\v 垂直制表符 \v 匹配一个垂直制表符
\f 换页符 \f 匹配一个换页符
POSIX字符类
POSIX字符类是一个形如[:...:]的特殊元序列(meta sequence),他可以用于匹配特定的字符范围
正则表达式 描述 示例[:alnum:] 匹配任意一个字母或数字字符 [[:alnum:]]+
[:alpha:] 匹配任意一个字母字符(包括大小写字母) [[:alpha:]]{4}
[:blank:] 空格与制表符(横向和纵向) [[:blank:]]*
[:digit:] 匹配任意一个数字字符 [[:digit:]]?
[:lower:] 匹配小写字母 [[:lower:]]{5,}
[:upper:] 匹配大写字母 ([[:upper:]]+)?
[:punct:] 匹配标点符号 [[:punct:]]
[:space:] 匹配一个包括换行符、回车等在内的所有空白符 [[:space:]]+
[:graph:] 匹配任何一个可以看得见的且可以打印的字符 [[:graph:]]
[:xdigit:] 任何一个十六进制数(即:0-9,a-f,A-F) [[:xdigit:]]+
[:cntrl:] 任何一个控制字符(ASCII字符集中的前32个字符) [[:cntrl:]]
[:print:] 任何一个可以打印的字符 [[:print:]]