Код: Выделить всё
^((.)(?1)\2|.?)$
Когда заканчивается рекурсия и когда регулярное выражение выходит из рекурсивного подшаблона и переходит в «|. ?" часть?
редактировать: извините, я не объяснил \2 и (?1)
Код: Выделить всё
(?1)
Код: Выделить всё
\2
Пример выше написан на PHP. Соответствует как «abba» (без символа среднего палиндрома), так и «abcba» — имеет средний неотраженный символ.
Подробнее здесь: https://stackoverflow.com/questions/116 ... rns-to-mat