RegEx для сопоставления группы в многострочных текстах - PullRequest
1 голос
/ 28 апреля 2019

У меня есть этот многострочный текст, я хочу извлечь числовое значение перед текстом «Далее» (в данном случае 13). Числовые значения изменятся, но местоположение останется прежним, это означает общее количество страниц на сайте. У меня проблемы с написанием правильного регулярного выражения для возврата этого значения:

Previous
1
2
3
...
13
Next

Showing 1 - 100 of 1227 Results[EXTRACT]

pattern =re.compile(r'(\d{1,2})\r\nNext', re.M)
result = pattern.match(text)

Ожидаемое возвращаемое значение - 13 *. 1004 *

1 Ответ

0 голосов
/ 28 апреля 2019
import re

t = """Previous
1
2
3
...
13
Next

Showing 1 - 100 of 1227 Results[EXTRACT]"""

re.search(r"\d+(?=\s+Next)", t).group(0)

    Returns: '13'

Регулярное выражение делает предварительное утверждение, чтобы увидеть, существует ли какое-либо количество (> 1) цифр, за которым следует любое количество (> 1) пробельных символов, за которыми следует слово Next.

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