日期:2014-05-16  浏览次数:20371 次

JavaScript正则exec于match区别
参考题目:

var someText="web2.0 .net2.0";
var pattern=/(\w+)(\d)\.(\d)/g;
outCome_exec=pattern.exec(someText);
outCome_matc=someText.match(pattern);

输出结果是什么?exec和match返回的都是数组

总结:

match是返回所有匹配的字符串合成的数组,但是正则表达式必须指定全局g属性才能返回所有匹配,不指定g属性则会返回一个只有一个元素的数组。

exec永远返回与第一个匹配相关的信息,其返回数组包括第一个匹配的字串,所有分组的反向引用。