\d | 匹配0-9中的任意一个数字,等效于[0-9]
\D | 匹配非数字字符,等效于[^0-9]
\w | 匹配任意一个字母、数字或下划线,等效于[^A-Za-z0-9_]
\W | 与任何非字母、数字或下划线字符匹配,等效于[^A-Za-z0-9_]
\s | 匹配任何空白字符,包括空格、制表符、换页符,等效于 ?[\f\n\r\t\v]
\S | 匹配任何非空白字符,等效于[^\f\n\r\t\v]
\n | 匹配换行符
\r | 匹配一个回车符
\t | 匹配制表符
\v | 匹配垂直制表符
\f | 匹配换页符
这些字符在正则表达式中表示特殊的含义,比如:*,+,?,\,
\ | 转义字符,将下一个字符标记为一个特殊字符
^ | 匹配字符串开始的位置
$ | 匹配字符串结尾的位置
* | 零次或多次匹配前面的字符或子表达式
+ | 一次或多次匹配前面的字符或子表达式
? | 零次或一次匹配前面的字符或子表达式
. | “点” 匹配除“\r\n”之外的任何单个字符
| | 或
[ ] | 字符集合
( ) | 分组,要匹配圆括号字符,请使用 “(” ?或 “)”
限定字符又叫量词,是用于表示匹配的字符数量的。
* | 零次或多次匹配前面的字符或子表达式
+ | 一次或多次匹配前面的字符或子表达式
? | 零次或一次匹配前面的字符或子表达式
{n} | n是一个非负整数,匹配确定的n次
{n,} | n是非负整数,至少匹配n次
{n,m} | n和m是非负整数,其中n<=m;匹配至少n次,至多m次
定位字符也叫字符边界,标记匹配的不是字符而是符合某种条件的位置,所以定位字符是“零宽的”。
^ | 匹配字符串开始的位置,表示开始
$ | 匹配字符串结尾的位置,表示结尾
\b | 匹配一个单词边界