RegExp 对象--利用g修饰符允许多次匹配的特点,可以用一个循环完成全部匹配

出处

RegExp 对象 - JavaScript 教程 - 网道 ---- RegExp.prototype.exec()

代码

正则实例对象的exec方法,用来返回匹配结果。如果发现匹配,就返回一个数组,成员是匹配成功的子字符串,否则返回null

利用g修饰符允许多次匹配的特点,可以用一个循环完成全部匹配

var reg = /a/g;
var str = 'abc_abc_abc'

while(true) {
  var match = reg.exec(str);
  if (!match) break;
  console.log('#' + match.index + ':' + match[0]);
}
// #0:a
// #4:a
// #8:a

上面代码中,只要exec方法不返回null,就会一直循环下去,每次输出匹配的位置和匹配的文本。

正则实例对象的lastIndex属性不仅可读,还可写。设置了g修饰符的时候,只要手动设置了lastIndex的值,就会从指定位置开始匹配。

你可能感兴趣的:(RegExp 对象--利用g修饰符允许多次匹配的特点,可以用一个循环完成全部匹配)