正则我们一般是用来匹配校验我们需要的情况或者不需要的情况
常用情况(\大写是小写的负向情况)
字符 | 描述 |
---|---|
\s | 空白字符 |
\S | 非空白字符 |
? | 0或1次匹配 |
* | 任意次匹配 |
+ | 1次或多次匹配 |
^ | 开始位置 |
$ | 结束为止 |
\b | 边界 |
任意匹配后加上?表示非贪婪匹配,即匹配够了就行,因为?表示有或者1,有了就行,不贪心
()表示捕获匹配,会被记录缓存,若里面有 | 分割,则表示里面的分割两侧是可选项
'123'.match(/(1|3)/g)
// 匹配 1 或 3
(?:)非捕获
效果同上只是不会被记录
exp1(?=exp2)
表示匹配后面是exp2的exp1
exp1(?!exp2)
表示匹配后面不是exp2的exp1
(?<=exp2)exp1
表示匹配前面是exp2的exp1
(?<!=exp2)exp1
表示匹配前面不是exp2的exp1
(exp)\1
表示重复匹配exp第一个()内容
// 示例
/^(\w+)\1+$/.test(str)
// 判断str是否是重复子字符串构成
网友评论