0

我有一个正则表达式:

var patt = /(word)(stmt)(hello)/;

我的示例文本是:

var sample = "wordhello";

并且光标在位置索引 4 处;如何从正则表达式中提取“stmt”作为缺失词?

4

1 回答 1

0

从您的评论和原始的正则表达式模式来看,您想要的实际上可能不是正则表达式,而是这样的:

function detectMissing(string, set) {
  var offset = 0, missing = [], pos;
  for(var i = 0, l = set.length ; i < l ; i++) {
    pos = string.indexOf(set[i], offset);
    if(pos === -1) {
      missing.push(set[i]);
    } else {
      offset = pos + set[i].length;
    }
  }
  return missing;
}

detectMissing("wordhello", ["word", "stmt", "hello"]); // -> ["stmt"]
于 2013-11-06T17:33:03.283 回答