\d
就是[0-9]。表示是一位数字。记忆方式:其英文是digit(数字)。
\D
就是[^0-9]。表示除数字外的任意字符。
\b
匹配单词的开始或结束
\B
匹配不是单词开头或结束的位置
\w
就是[0-9a-zA-Z_]。表示数字、大小写字母和下划线。记忆方式:w是word的简写,也称单词字符。
\W
是[^0-9a-zA-Z_]。非单词字符。
\s
是[ \t\v\n\r\f]。表示空白符,包括空格、水平制表符、垂直制表符、换行符、回车符、换页符。记忆方式:s是space character的首字母。
\S
是[^ \t\v\n\r\f]。 非空白符。.就是[^\n\r\u2028\u2029]。通配符,表示几乎任意字符。换行符、回车符、行分隔符和段分隔符除外。记忆方式:想想省略号…中的每个点,都可以理解成占位符,表示任何类似的东西。
{m,}
表示至少出现m次。
{m}
等价于{m,m},表示出现m次。
?
等价于{0,1},表示出现或者不出现。记忆方式:问号的意思表示,有吗?
+
等价于{1,},表示出现至少一次。记忆方式:加号是追加的意思,得先有一个,然后才考虑追加。
*
等价于{0,},表示出现任意次,有可能不出现。记忆方式:看看天上的星星,可能一颗没有,可能零散有几颗,可能数也数不过来。
.
匹配除换行符以外的任意字符
[^x]
匹配除了x以外的任意字符
[^aeiou]
匹配除了aeiou这几个字母以外的任意字符
需要转义的元字符如下:
^ $ . * + ? | \ / ( ) [ ] { } = ! : - ,