Выяснение поискового запроса RegEx - PullRequest
0 голосов
/ 28 мая 2020

Я новичок во всем этом. Я использую регулярное выражение для извлечения данных из HTML, которое содержит:

<p class="bold"> Last Statement:</p>
<p>Yes sir. I  would like to thank God, my dad, my Lord Jesus savior for saving me and changing  my life. I want to apologize to my in-laws for causing all this emotional pain.  I love y&rsquo;all and consider y&rsquo;all my sisters I never had. I want to thank you for  forgiving me. Thank you warden. </p>

Я пытаюсь извлечь текст, используя

word = re.findall('Last Statement:</p>.*<p>(.+)</p>', x)

Но это дает мне пустой список. Как я могу это отладить?

1 Ответ

0 голосов
/ 30 мая 2020

вы почти были здесь. замена. * на \ s * должна заставить его работать.

word = re.findall('Last Statement:</p>\s*<p>(.+)</p>', x)

например,

import re

if __name__ == "__main__":
    s = """
<p class="bold"> Last Statement:</p>
<p>Yes sir. I  would like to thank God, my dad, my Lord Jesus savior for saving me and changing  my life. I want to apologize to my in-laws for causing all this emotional pain.  I love y&rsquo;all and consider y&rsquo;all my sisters I never had. I want to thank you for  forgiving me. Thank you warden. </p>
        """
    word = re.findall('Last Statement:</p>\s*<p>(.+)</p>', s)
    print(word)

, поскольку вы обрабатываете html, может быть лучше использовать xml parser + xpath для поиска интересующего вас текста ...

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