RegExp:并非每个组都被捕获但每个匹配..(d​​ebuggex.com示例)

时间:2016-11-07 00:09:01

标签: javascript regex node.js re2

测试用例:

/((adam)|(eva))+/gi.exec("adameva");

Array[4]
    0: "adameva"
    1: "eva"
    2: undefined  //(should contains captured "adam" word)
    3: "eva"
    index: 0
    input: "adameva"
    length: 4

如您所见,有3组可以捕获

(...)+   - first
(adam)   - second
(eva)    - third

和针对此正则表达式进行测试的输入是:

adameva

正如您在debbugex现场示例或更高版本中所见,文本是匹配的,但是..

仅捕获1组和3组。为什么不2?它也匹配..

Debuggex Demo

(当你使用RE2常规expresion引擎时,如果有人有兴趣,则不会出现错误:https://github.com/uhop/node-re2

0 个答案:

没有答案