js-----正则表达式

2018-06-30  本文已影响136人  大菜鸟呀

1、正则表达式的写法:

var   re =// ;   (不能为空)

var re = new RegExp()    当正则需要传参是时候,需要用这种方式

一个反斜杠 在字符串中无法输出

2、正则的常用方法:

1、tese:

正则去匹配字符串,如果匹配成功,则返回true;

                                       如果匹配失败,则返回false;

写法:正则.text(字符串)


2、search:

正则取匹配字符串。如果匹配成功,则返回匹配的位置;

                                     如果匹配失败,则返回 -1;

写法:字符串.search(正则)


3、match:

正则取匹配字符串,如果匹配成功,则返回匹配成功的数组;

                                   如果匹配失败,则返回null;

写法:字符串.match(正则)


4、replace:

正则去匹配字符串,匹配成功的字符串被替换成新的字符串;

写法:字符串.replace(正则,新字符串)

//replace的第二个参数可以是一个函数,函数的第一个参数为匹配到的字符串

例:

replace的第二个参数是字符串 replace的第二个参数是函数

3、转义字符:

\s--------空格

\S------非空格

\d-------数字

\D------非数字

\w-----字符(字母,数字,下划线—)

\W-----非字符

.      ------任意字符

\.  --------代表  .  点

\b -------独立部分(起始、结束、空格)

\B-------非独立部分

var  a= 'abc'

var   re=/\ba/ ------判断a为独立部分

\1---------正则的第一个子项(相应的有 第二个、第三个)


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、匹配一个字符串中重复的字符和其出现的次数

2、匹配邮箱:

3、匹配空格:

上一篇下一篇

猜你喜欢

热点阅读