【发布时间】:2019-02-04 12:10:25
【问题描述】:
https://regex101.com/r/gNNlKM/2
我想匹配 START:test:test:test:asd:xxx:yyy:zzz:12345:END,但前提是 : 出现 4 次或更多次。
一般来说,以下工作:(START.*?)\d+(:END)
但是我怎样才能让:{4,} 进入呢?
匹配的字符串可能会重复多次。喜欢:START:test:test:test:asd:xxx:yyy:zzz:12345:END...START:test:test:test:asd:xxx:yyy:zzz:12345:END...
重要的是 :{4,} 匹配只应用于每个 START-END 令牌内。
旁注:我在这里使用匹配组,因为我稍后想在这种特殊情况下删除数字。但这对于如何获得 n 次匹配的问题并不重要。
【问题讨论】:
-
您似乎在寻找
START后跟4x:[^:]*,即:后跟一些非:字符,然后是:END。