一、String对象支持四种利用正则表达式的方法,分别为search(),replace(),match(),split()
- search() 以正则表达式作为参数;返回第一个与之相配的字符串开始的位置,如果没有则返回-1;
var str = "jfkdasjf";
var patt = /a/g;
var res = str.search(patt);
console.log(res);//a
- replace() 执行检索和替换;第一个参数是一个正则表达式,第二个参数是要替换为的字符串或者闭包;
//把a替换成&;
var str = "jfkdasjf";
var patt = /a/g;
var res = str.replace(patt,"&");
console.log(res)
- match() 唯一的一个参数,是正则表达式;如果匹配正则表达式,则返回一个数组;如果不匹配则返回null;
var str = "1a1b1c";
var patt = /[1.]/;
alert(str.match(patt )); //1a
- split()方法是能够支持模式匹配的。
二、RegExp对象定义了两个用于模式匹配的方法,它们是exec()和test()
- exec()和match()方法很类似;参数是一个字符串;对一个指定的字符串执行一个正则表达式匹配,如果有它返回一个数组,如果没有返回null;
var str = "1a1b1c";
var patt= /1./;
var res= patt.exec(str);
console.log(arr) //返回 ["1a", index: 0, input: "1a1b1c"]
- test()参数是一个字符串;如果这个字符串包含正则的一个匹配,返回true 如果不包含 返回false
var str = "1a1b1c";
var patt= /1./;
alert(patt.test(str)); // truea", index: 0, input: "1a1b1c"]