概念
使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。也可以是对象。搜索模式可用于文本搜索和文本替换。
怎么用
var patt = /^[a-z0-9]{6,16}$/
用到的概念
边界符
\
^:以谁开始
$:以谁结束
字符类
[]:查找方括号之间符合字符的其中一个即可。
-:范围符号
[^]:取反
量词
n+:匹配任何包含至少一个 n 的字符串。
n*:匹配任何包含零个或多个 n 的字符串。
n?:匹配任何包含零个或一个 n 的字符串。
{n,m}:重复n-m
小括号:优先级
怎么检测是否符合
test()方法
console.log(patt.test("abc123"));
简化写的正则表达式
元字符
\d:匹配数字
\w:匹配字母数字_
\s:匹配空格
正则替换
修饰符
g:全局匹配
i:忽略大小写
gi:全局匹配 + 忽略大小写
方法:replace()
var str = "Visit haha!";
var n = str.replace("haha,hellow");
console.log(n);
例子
![](https://i-blog.csdnimg.cn/blog_migrate/1fe8fe576a5342dc2e2388406d3f7e2f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b429d6a6b4b5ae5a42615a9155fd767d.png)
只要包含有123这些数字返回的都是true
![](https://i-blog.csdnimg.cn/blog_migrate/aee83dfa4b48b94dab2f8dfa0d5fff3c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/77febdaf469988e9bc3372da5d4a676c.png)
必须以abc开头
![](https://i-blog.csdnimg.cn/blog_migrate/09d366edb3e7a07b9ca7213e0334bb51.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1b2e3fd65696760e6ab7567d71195f2d.png)
精准匹配,必须符合abc
![](https://i-blog.csdnimg.cn/blog_migrate/26de1fe1b0d3a7221ce5a7387caef018.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d3dbd80cf8593e4f5ac39d863cf360df.png)
只要包含有a 或者 包含有b 或者包含有c 都返回为true
![](https://i-blog.csdnimg.cn/blog_migrate/c0f232f073c571d6a0e18ca34eaa778a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/56bf1264c110dc49ebeef545903098b2.png)
只有是a 或者是 b 或者是c 这三个字母才返回 true