Например: строка - "все вот это досюда, а дальше там еще много всего досюда". Подстрока, до которой надо вывести все - "досюда", получить надо "все вот это ".
Ответ
Задача решается при помощи следующего регулярного выражения (PCRE):
(.*?)досюда
В первом совпадении (Match 1) будет искомая подстрока.
Следует обратить внимание на "ленивый" квантификатор (.*?). Если бы он был обычным, т.е. "жадным" (.*), то результат немного отличался бы от ожидаемого. "Жадный" квантификатор для строки
"все вот это досюда, а дальше там еще много всего досюда"
выдаст совпадение
"все вот это досюда, а дальше там еще много всего "
в то время как "ленивый" даст вполне ожидаемый результат:
"все вот это "
Комментариев нет:
Отправить комментарий