Как совместить любой символ, повторяющий n
раз?
Пример:
for input: abcdbcdcdd
for n=1: ..........
for n=2: .........
for n=3: .. .....
for n=4: . . ..
for n=5: no matches
Через несколько часов это лучшее выражение
(\w)(?=(?:.*\1){n-1,}) //where n is variable
который использует lookahead. Однако проблема с этим выражением такова:
for input: abcdbcdcdd
for n=1 ..........
for n=2 ... .. .
for n=3 .. .
for n=4 .
for n=5 no matches
Как вы можете видеть, когда lookahead соответствует символу, давайте посмотрим for n=4
line, d
утверждение lookahead и сначала d
, соответствующее регулярному выражению. Но оставшиеся d
не совпадают, потому что впереди их еще нет d
.
Надеюсь, я четко сформулировал эту проблему. Надеясь на ваши решения, спасибо заранее.