Страницы

Поиск по вопросам

суббота, 21 декабря 2019 г.

Регулярное выражение захватывает слишком много текста

#регулярные_выражения


Есть HTML

....
....
Регулярка (.*)
возвращает полностью код, содержащий 2 таблицы сразу. Как запросить, чтобы регулярка вернула каждую таблицу по отдельности?


Ответы

Ответ 1



Надо уменьшить жадность квантификатора, то есть заменить * ("жадная" версия) *? ("ленивой" версией). Вот так: (.*?)<\/table> ^^ Или (если библиотека регулярных выражений не поддерживает модификатор DOTALL)
([\s\S]*?)<\/table> ^^^^^^^^ Посмотреть пример работы

Комментариев нет:

Отправить комментарий