任何一个正则都是由 元字符 和 修饰符 组成的
修饰符
g(global):全局匹配 i(ignoreCase):忽略大小写匹配 m(multiline):多行匹配
元字符
[量词元字符] +:让前面的元字符出现一到多次 ?:出现零到一次 *:出现零到多次 {n}:出现n次 {n,}:出现n到多次 {n,m}:出现n到m次 [特殊意义的元字符] :转义字符(把一个普通字符转变为有特殊意义的字符,或者把一个有意义字符转换为普通的字符) .:除了(换行符)以外的任意字符 d:匹配一个0~9之间的数字 D:匹配任意一个非0~9之间的数字(大写字母和小写字母的组合正好是反向的) w:匹配一个 0~9或字母或_ 之间的字符 s:匹配一个任意空白字符 :匹配一个边界符 x|y:匹配x或者y中的一个 [a-z]:匹配a-z中的任意一个字符 [^a-z]:和上面的相反,匹配任意一个非a-z的字符 [xyz]:匹配x或者y或者z中的一个字符 [^xyz]:匹配除了xyz以外的任意字符 ():正则的小分组,匹配一个小分组(小分组可以理解为大正则中的一个小正则) ^:以某一个元字符开始 $:以某一个元字符结束 ?::只匹配不捕获 ?=:正向预查 ?!:负向预查 ……
除了以上特殊元字符和量词元字符,其余的都叫做普通元字符:代表本身意义的元字符