正则中的exec()和$1最近有用到,所以在这里记下来
之前常用的test()
在匹配时返回的是true或者false,例如:
var a='123bnm';
var reg=/\d{3}[A-Za-z]{3}/;
reg.test(a) //=>返回true
而exec()
则会返回匹配的字符串,如果没有匹配则返回null
var str="Hello world!";
//查找"Hello"
var patt=/Hello/g;
var result=patt.exec(str);
document.write("返回值: " + result); //=> 输出Hello
//查找 "W3Cschool"
patt=/W3Cschool/g;
result=patt.exec(str);
document.write("<br>返回值: " + result);//=> 输出null
还有replace函数中的$1,$2...,是指在正则表达式中小括号里的内容
比如 /gai([\w]+?)over([\d]+)/
匹配 gainover123
$1= 括号里的 n
$2= 第2个括号里的 123
网友评论