【发布时间】:2017-12-14 14:00:07
【问题描述】:
我怎样才能让同一个角色成为两个不同匹配项的一部分?
例如我希望"abc".match(/ab|bc/g) 产生两个匹配 - 一个用于“ab”,它将在这种情况下进行,但还有一个用于“bc”。换句话说,“b”字符是我正在寻找的两个子字符串的一部分。
【问题讨论】:
-
不可能使用单个正则表达式
-
很有可能。只需运行
RegExp#exec并使用(?=(ab|bc))正则表达式获取match[1],同时手动推进 RegExp 索引。
标签: javascript regex