蛙蛙请教:js里的match方法和exec方法的区别,有些晕,大家给解释一下原理
先来看第一段代码,这段代码用的是String对象的Match方法,能够弹出3个链接,说明正常匹配,但是里面的((.|\n)*?)和(.*?)我不知道有什么区别.
<div );
var a = str.match(re);
for(var i=0;i<a.length;i++)
{
alert(a[i]);
}
//-->
</SCRIPT>
再来看第二段儿程序,这里只弹出了两个对话框,而且最后一个弹出的是括号里匹配的内容.
<div >
var str1 = div1.innerHTML;
var re = /<a[^<>]+>([^a]*?)<\/a>/gi;
var a = re.exec(str1);
var b=re.exec(str1);
var c=re.exec(str1);
alert(a[1]);
alert(b[1]);
alert(c[1]);
</SCRIPT>