Как извлечь многострочный текст с помощью регулярного выражения Python - PullRequest
2 голосов
/ 28 июля 2011

Привет, у меня есть следующий текст.

x = "" "Здравствуйте, это \ nmultiline текст \ nend.Hello, это \ n второй кусок \ nend." ""

Этот шаблонПривет, \ nend.продолжает повторять.Я хочу извлечь текст между каждым набором этих двух слов.Я пытался использовать это

b = re.search (r '(? <= Hello,). + (? = End)', x, re.DOTALL) </p>

но я получаю весь текст от начала до конца.Как получить отдельные фрагменты текста?

Спасибо. P

1 Ответ

6 голосов
/ 28 июля 2011

Используйте ленивый квантификатор : .+? вместо .+.

Проблема состоит в том, что .+ совпадает настолько, насколько возможнотак просто кушает весь путь до конца документов.Добавление знака вопроса говорит о том, что он соответствует как можно меньше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...