1、正则表达式的写法:
var re =// ; (不能为空)
var re = new RegExp() 当正则需要传参是时候,需要用这种方式
![](https://img.haomeiwen.com/i5827443/b0c89533e12d8898.png)
2、正则的常用方法:
1、tese:
正则去匹配字符串,如果匹配成功,则返回true;
如果匹配失败,则返回false;
写法:正则.text(字符串)
2、search:
正则取匹配字符串。如果匹配成功,则返回匹配的位置;
如果匹配失败,则返回 -1;
写法:字符串.search(正则)
3、match:
正则取匹配字符串,如果匹配成功,则返回匹配成功的数组;
如果匹配失败,则返回null;
写法:字符串.match(正则)
4、replace:
正则去匹配字符串,匹配成功的字符串被替换成新的字符串;
写法:字符串.replace(正则,新字符串)
//replace的第二个参数可以是一个函数,函数的第一个参数为匹配到的字符串
例:
![](https://img.haomeiwen.com/i5827443/9dcc5bf8f52f99dd.png)
![](https://img.haomeiwen.com/i5827443/c5155aa26a79735e.png)
3、转义字符:
\s--------空格
\S------非空格
\d-------数字
\D------非数字
\w-----字符(字母,数字,下划线—)
\W-----非字符
. ------任意字符
\. --------代表 . 点
\b -------独立部分(起始、结束、空格)
\B-------非独立部分
var a= 'abc'
var re=/\ba/ ------判断a为独立部分
\1---------正则的第一个子项(相应的有 第二个、第三个)
![](https://img.haomeiwen.com/i5827443/c0bd82ba0fd46b39.png)
4、正则默认行为:
1、正则默认是区分大小写的,如果想不区分大小写,在正则的最后面加标识符 “i”
2、正则默认是匹配到一个即返回,如果想要全局匹配的话,在正则的最后加上标识符 “g”
3、正则默认匹配一行,如果想要多行匹配,需要在正则的之后加上标识符‘u’
例:var re=/B/i <==> var re =new RegExp ( 'B' , 'i' )
5、量词:
+ 加号:至少匹配一次
| 竖线:或
6、匹配子项:
() 代表分组或者子项
把正则里第一个小括号里面的正则称为第一个子项
7、字符类:
[ ]-----------代表一组相似的元素,整体代表一个字符
[a-zA-Z0-9] 等等 必须从小到大写
var str=‘abc'
var re=/a[bde]c/ 返回true
^ ----------如果在[ ]中括号里面则代表排除
^ ------------如果在 正则的开头,表示匹配 必须以^后面的内容开头
$ ----------如果在正则的结尾,表示匹配必须以$前面的一个正则结束
8、举例:
1、匹配一个字符串中重复的字符和其出现的次数
![](https://img.haomeiwen.com/i5827443/6fdeef4f1d55db79.png)
2、匹配邮箱:
![](https://img.haomeiwen.com/i5827443/70561ebdea54655f.png)
3、匹配空格:
![](https://img.haomeiwen.com/i5827443/8ed05a814a4216f7.png)
![](https://img.haomeiwen.com/i5827443/25ba7990f186ff42.png)
网友评论