正则表达式的匹配分为两种,一种是匹配字符,一种是匹配位置
\ 转义字符
^ 匹配输入字符串的开始位置
$ 匹配输入字符串的结束位置
* 匹配前面的子表达式任意次
+ 匹配前面的子表达式一次或多次
? 匹配前面的子表达式一次或零次
{n} n是一个非负整数,匹配确定的n次
{n,} n是一个非负整数,至少匹配n次
{n,m} n和m都是非负整数,并且n<m,最少匹配n次最大匹配m次
x | y 匹配x或者匹配y
[xyz] 字符集合,匹配所包含的任意一个字符
[^xyz] 负值字符集合,匹配未包含的任意字符
[a-z] 字符范围,匹配指定范围内的任意字符
[^a-z] 负字符范围
\b 匹配一个单词边界,也就是指单词和空格间的位置
\B 匹配非单词边界
\cx 匹配由x指明的控制字符
\d 匹配一个数字字符
\D 匹配一个非数字字符
\f 匹配一个换页符
\n 匹配一个换行符
\r 匹配一个回车符
\s 匹配任何不可见字符
\S 匹配任何可见字符
\t 匹配一个制表符
\v 匹配一个垂直制表符
\w 匹配包括下划线的任何单词字符
\W 匹配任何非单词字符