问一个关于正则表达式exec方法的问题
var patt1=new RegExp("(life)","g");
var beTest="These is a free thing in life."
result=patt1.exec(beTest)
document.write(result);
为什么输出的是
life,life
有两个life呢?
------解决方案--------------------把“var patt1=new RegExp("(life)","g");”改成
var patt1=new RegExp("life","g");不要括号
------解决方案--------------------exec得到的数组 :
array[0]是整个字符串
array[1]是第一个括号捕获的内容
array[2]是第二个括号捕获的内容
array[3]是第三个括号捕获的内容
array[4]是第四个括号捕获的内容
... ...
------解决方案--------------------exec返回的结果
r[0] 是匹配的结果
r[1-n] 是所有的子匹配 即表单是中的()