如果我有一个字符串" ababa"如何查找字符串" aba"存在?在这个例子中,我希望它返回0和2,因为我有(aba)ba和ab(aba)。
编辑:前瞻性的工作(或者在Ruby中做过)......我现在无法在Javascript中重新实现。这是一个无限循环:str = 'ababa',
re = /(?=aba)/g
while ((match = re.exec(str)) !== null) {
console.log(match)
}
谢谢!
答案 0 :(得分:3)
使用lookahead
代替capturing
字符串。
(?=aba)
试试这个。看看演示。
https://regex101.com/r/sJ9gM7/35
var re = /(?=aba)/g;
var str = 'ababa';
var subst = '';
var result = str.replace(re, subst);
答案 1 :(得分:1)
尝试使用JavaScript:
str = 'ababa',
re = /a(?=ba)/g
while ((match = re.exec(str)) !== null) {
console.log(match)
}