我想加入/合并正则表达式的结果。
例如,这是字符串
hello foo bar
模式/el/
=>的正则表达式结果el
模式/llo\sfo
=>的正则表达式结果llo fo
如果我使用烟斗,结果只有一个匹配
对于此模式/el|llo\sfo/
,结果仅为el
我想要的结果应该是ello fo
用例用于突出显示文本中的多个模式。
答案 0 :(得分:0)
Regex引擎只处理字符串一次。消耗了一个角色后,它就无法再次处理(Lookarounds不计算那件事,因为它们“只是看”)。
由于您的模式需要在示例字符串上“重叠”,因此它们永远不会匹配在一起(在一个正则表达式中)。但是,他们会使用全局标记g
和以下输入:
"helllo foo bar".match(/el|llo\sfo/g)
因此,唯一的解决方案是您使用两个单独的正则表达式。