Maison  >  Article  >  interface Web  >  L'objet JavaScript-RegExp ne peut être utilisé qu'une seule fois. Solution_Javascript Tips

L'objet JavaScript-RegExp ne peut être utilisé qu'une seule fois. Solution_Javascript Tips

WBOY
WBOYoriginal
2016-05-16 16:43:251050parcourir

以下的代码,是测试从字符串中识别出年月日,可以看到创建的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一个。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn