- 符号
1.修饰符
1)i 执行不区分大小写的匹配
2)g 执行一个全局匹配,简言之,即找到所有的匹配,而不是找到第一个之后就停止
3)m 多行匹配模式,^匹配一行的开头和字符串的开头,$匹配行的结束和字符串的结束
2.转义字符
\d:和[0-9]一样
\D:代表[^0-9]
\w:代表[a-zA-z0-9]
\W:代表[^a-zA-z0-9]
\0:匹配null 字符
\b:匹配退格字符
\n:匹配换行符
\r:匹配回车字符
\t:匹配制表符
\s:匹配空白字符、空格、制表符和换行符
\S:匹配非空白字符
3.特殊字符
^ . * + - ? = ! : | \ / ( ) [ ] { }
. : 除了\n之外的任意一个字符
\ : 转义字符
| : 或者
() : 分组
\n : 匹配换行符
\b : 匹配边界 字符串的开头和结尾 空格的两边都是边界 => 不占用字符串位数
^ : 限定开始位置 => 本身不占位置
详情参考该篇博客 - 量词
- : 0到多个
- : 1到多个
? : 0次或1次 可有可无
{n} : 正好n次;
{n,} : n到多次
{n,m} : n次到m次
- 字符类
[a-z] : 任意字母 []中的表示任意一个都可以
[^a-z] : 非字母 []中^代表除了
[abc] : abc三个字母中的任何一个 [^abc]除了这三个字母中的任何一个字符
注意:[]中,不会出现两位数
如:[18-90]表示18或者90
如果想要表示18到94
let re = /[18-19]|[[2-8]\d]|[9[0-4]]/;