Python re.findall: как работать с регулярными выражениями
Python re.findall является методом модуля re (регулярного выражения), который позволяет искать все совпадения с заданным регулярным выражением в заданной строке и возвращать их в виде списка.
Рассмотрим пример:
import re
text = "The quick brown fox jumps over the lazy dog"
pattern = r"\w+"
result = re.findall(pattern, text)
print(result)
В данном примере мы импортировали модуль re, задали исходный текст в переменную "text" и указали регулярное выражение для поиска слов в переменной "pattern". Затем мы использовали метод re.findall для поиска всех слов, соответствующих заданному регулярному выражению, и результат сохраняем в переменную "result".
На выходе мы получим список, содержащий все найденные слова строки "text":
['The', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog']
В данном примере мы использовали регулярное выражение \w+, которое означает "поиск всех слов, состоящих только из букв и цифр, длиной один и более символов".
Также можно использовать более сложные регулярные выражения для поиска более специфических паттернов. Например, чтобы найти все email-адреса в тексте, можно использовать следующее регулярное выражение:
import re
text = "john@example.com, mary@example.com, max@example.com"
pattern = r"\b\w+@\w+\.\w+\b"
result = re.findall(pattern, text)
print(result)
В этом примере мы использовали регулярное выражение \b\w+@\w+\.\w+\b, которое означает "поиск всех строк, соответствующих стандартам email-адресов".
На выходе мы получим список, содержащий все найденные email-адреса в строке "text":
['john@example.com', 'mary@example.com', 'max@example.com']
Таким образом, Python re.findall позволяет производить поиск по заданному регулярному выражению и получать все найденные результаты в виде списка.