有时需要查找不属于某个能简单定义的字符类的字符。比如想查找除了数字以外,其它任意字符都行的情况,这时需要用到反义。

表3. 常用的6种反义代码

代码/语法 说明
\W 匹配任意不是 字母、数字、下划线、汉字 的字符
\S 匹配任意不是 空白符 的字符
\D 匹配任意不是 数字 的字符
\B 匹配不是 单词开头或结束 的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符

举例:

\S+ 匹配不包含空白符的字符串。

<a[^>]+> 匹配用尖括号括起来的以a开头的字符串。