我有以下字符串:
FFDEFFDFFDCFFDDFFAAF
和以下正则表达式模式:
FF..FF
运行gregexpr将导致以下结果:
gregexpr('FF..FF','FFDEFFDFFDCFFDDFFAAF')
[[1]]
[1] 1 8
attr(,"match.length")
[1] 6 6
attr(,"useBytes")
[1] TRUE
但是缺少一个匹配项,因为该模式有3次出现:
FFDEFFDFFDCFFDDFFAAF
FF..FF || || ||
FF..FF ||
FF..FF
知道为什么会这样以及如何解决吗?
最佳答案
您需要可以使用perl regex执行的前瞻表达式:
gregexpr("(?=FF..FF)", "FFDEFFDFFDCFFDDFFAAF", perl=TRUE)
关于r - R为什么gregexpr不返回所有出现的regex模式?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30904089/