Python Multiline Match Конец строки - PullRequest
       0

Python Multiline Match Конец строки

0 голосов
/ 11 декабря 2018

Я пытаюсь сопоставить, пока не попаду в шаблон («this», игнорируя пробелы между началом строки и шаблоном) или до конца строки в абзаце, используя:

r'.*?(?=^[^\S\n]*this|$)'

Эта строка регулярного выражения работает нормально, если моя строка - только одна строка ($ соответствует концу строки).Однако я не смог найти регулярное выражение, совпадающее с концом строки, так есть ли способ обойти это?Вот мой код:

import re  
a_str="""\  
paragraph starts here  
another line
this line may or may not exist"""  
a_match = re.compile(r'.*?(?=^[^\S\n]*this|$)', re.MULTILINE|re.DOTALL).match(a_str)

РЕДАКТИРОВАТЬ :

Ожидаемый результат:

"paragraph starts here\nanother line"

1 Ответ

0 голосов
/ 11 декабря 2018

Похоже, что удаление лишних '| $' в прогнозе на будущее сделало свое дело.
Взгляд в будущее также, очевидно, соответствует концу строки - я предполагаю

r'.*?(?=^[^\S\n]*this)'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...