簡體   English   中英

在Ruby中滾動Regexp

[英]Rolling Regexp in Ruby

如果我有字符串“ ababa”,如何找到字符串“ aba”存在的所有索引? 在這種情況下,我希望它返回0和2,因為我有(aba)ba和ab(aba)。

編輯:前瞻性的工作方式(或它在Ruby中完成)...我現在在用Javascript重新實現時遇到麻煩。 這引發了無限循環:

str = 'ababa',
re = /(?=aba)/g
while ((match = re.exec(str)) !== null) {
  console.log(match)
}

謝謝!

使用lookahead而不是capturing字符串。

(?=aba)

試試看。看演示。

https://regex101.com/r/sJ9gM7/35

var re = /(?=aba)/g;
var str = 'ababa';
var subst = '';

var result = str.replace(re, subst);

嘗試使用JavaScript:

str = 'ababa',
re = /a(?=ba)/g
while ((match = re.exec(str)) !== null) {
   console.log(match)
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM