Регулярное выражение, выбор с конца
Всех с наступающими праздниками! HELP , запутался с регулярными выражениями. есть текст:
Есть много варZиантов Lorem Ipsum, но больZшинство из них имеет неZ всегда приемлемые модификации, например, юмористические вставки иZли слова, которые дZаже отдалёTнно не напоминают латынь. Есть много варZиантов Lorem Ipsum, но больZшинство из них имеет неZ
В этом тексте несколько букв Z и одна буква T, между этими буквами произвольный текст. Как регулярным выражением выбрать кратчайший фрагмент между Z и одна буква T, то есть ожидаемый результат: Zаже отдалёT . Как добиться такой работы регулярки?
Ответы (2 шт):
Z([^Z]*?)T
([^Z]*?) - это захватывающая группа, которая соответствует любому количеству символов, кроме 'Z', и делает это лениво (т.е., захватывает наименьшее возможное количество символов).
Никак.
Регулярками можно найти 2 подстроки - слева и справа от буквы T. Но в большинстве языков регулярки будут выбирать более раннее вхождение, заставить выбрать из двух более короткое - невозможно. Если только это не предусмотрено методами поиска, заложенными в язык.