我想在ThisAnything
ThatAnything
和ThisAnthingThatAnything
(两场比赛)
到目前为止,我已经/(?:This|That)(?:.*)/g
但这将匹配ThisAnthingThatAnything
(一场比赛,但我想要两场比赛)。我该如何实现这一目标?感谢
答案 0 :(得分:1)
使用正向前瞻并捕获两组中的两个子串:
(This.*?(?=This|That|\b)|That.*?(?=This|That|\b))
请参阅example。
结果:
MATCH 1
1. [0-11] `ThisAnthing`
MATCH 2
1. [11-23] `ThatAnything`
答案 1 :(得分:1)
split(/(?=This|That)/g)
应该这样做:
s = "ThisAnthingThatAnythingThatMoreThisMore"
a = s.split(/(?=This|That)/g)
document.write(a)

答案 2 :(得分:0)
你想要一个不情愿的量词,*?
;所以你的正则表达式变成了(This|That)(.*?)