#регулярные_выражения
Например: строка - "все вот это досюда, а дальше там еще много всего досюда". Подстрока, до которой надо вывести все - "досюда", получить надо "все вот это ".
Ответы
Ответ 1
Задача решается при помощи следующего регулярного выражения (PCRE): (.*?)досюда В первом совпадении (Match 1) будет искомая подстрока. Следует обратить внимание на "ленивый" квантификатор (.*?). Если бы он был обычным, т.е. "жадным" (.*), то результат немного отличался бы от ожидаемого. "Жадный" квантификатор для строки "все вот это досюда, а дальше там еще много всего досюда" выдаст совпадение "все вот это досюда, а дальше там еще много всего " в то время как "ленивый" даст вполне ожидаемый результат: "все вот это "Ответ 2
наиболее логичное решение — удаление искомого слова и всех символов после него: s/досюда.*// в строке останется только то, что требуется.Ответ 3
"any text any text any textother text other text ...".match(/[\s\S]*?(?= )/)
Комментариев нет:
Отправить комментарий