JavaScript-RegExp对象仅仅能使用一次

下面的代码,是測试从字符串中识别出年月日,能够看到创建的rYMD这个RegExp对象运行了一次后,又运行了一次。
	var DateStr = "2014-9-8";
	var rYMD = new RegExp("(\d{4}|\d{2})-(\d{2}|\d{1})-(\d{2}|\d{1})", "g");
	var aRt = rYMD.exec(DateStr);
	var sRt=rYMD.exec(DateStr);

经过调试,发现第一次运行,aRt得到了返回的Array(数组),可是紧跟其后的sRt却是null


经过重复尝试,发现是由于RegExp对象运行了一次后就废掉了。


所以,须要注意了,每次用RegExp都须要又一次new一个。

原文地址:https://www.cnblogs.com/mengfanrong/p/4308415.html