Рассмотрим строку
aabaabaabaabaab
Очевидно, что эта строка состоит из 5 смежных входов aab
, поэтому я хочу, чтобы мое регулярное выражение соответствовало aab
.
Чтобы уточнить: aabaab
не будет приемлемым выходом, потому что он сделал, повторяя aab
. Но aab
является допустимым результатом, потому что он не состоит из повторяющейся более короткой строки.
Для вопроса предположим, что может быть дополнительный текст вокруг повторяющегося сегмента (например, 11aabaabaabaabaab22
или даже xaabaabaabaabaabaa
). Поэтому невозможно привязать регулярное выражение с помощью ^
или $
.
Неудачная идея # 1: (.+?)\1+
Здесь вместо <ожидаемого aab
отображается aa
.
Неудачная идея # 2: (.+)\1+
Это фиксирует aabaab
.
Можно ли сделать это с помощью чистого регулярного выражения? Если да, возможно ли это без динамической ширины?