var re = /ab+c/; //方式一 正则表达式字面量var re = new RegExp("ab+c"); //方式二 RegExp对象的构造函1)正则表达式字面量在脚本加载后编译。若你的正则表达式是常量,使用这种方式可以获得更好的性能。

test:
一个在字符串中测试是否匹配的RegExp方法,它返回true或false。语法如下:regexObj.exec(str)
match:
一个在字符串中执行查找匹配的RegExp方法,它返回一个数组或者在未匹配到时返回null。
与exec略有不同,首先是调用方式,math是由字符串调用,而exec是由RegexObj调用。
其次,如果表达式中有“g”标记,那么返回一个匹配的字符串数组,如果没有就会和exec返回的一样。下面这个demo就是有“g”。语法如下:str.match(regexp)
示例代码:
var re = /quicks(brown).+?(jumps)/ig;var result = re.exec("The Quick Brown Fox Jumps Over The Lazy Dog");返回结果:

search:
一个在字符串中测试匹配的String方法,它返回匹配到的位置索引,或者在失败时返回-1。语法如下:str.search(regexp)
例如上面的示例代码如果是调用search,返回数据就是4。
replace:
一个在字符串中执行查找匹配的String方法,并且使用替换字符串替换掉匹配到的子字符串。语法如下:str.replace(regexp|substr,newSubStr|function[,flags])
var re = /(w+)s(w+)/;var str = "John Smith";var result = str.replace(re, "$2, $1");返回的结果将是:“Smith, John”
var re = /(d)/;var result = "Hello 1 word. Sentence number 2.".split(re);console.log(result);var re = /d/;var result = "Hello 1 word. Sentence number 2.".split(re);console.log(result);返回结果:

4.正则表达式执行返回信息
var myRe = new RegExp("d(b+)d", "g");var myArray = myRe.exec("cdbbdbsbz");console.log(myArray);代码中返回的结果如下:


5.正则表达式标志

var re = /w+s/g;//表达式一var re = new RegExp("\w+\s", "g");//表达式二var str = "fee fi fo fum";var myArray = str.match(re);console.log(myArray);表达式一和表达式二返回的结果是一样的。都是下面的那个数组:

以上就是本文的全部内容,希望对大家的学习有所帮助。