Шаблоны регулярных выражений Python (перемодуль) Шпаргалка

Справочное руководство по регулярным выражениям Python. Изучите шаблоны сопоставления, поиска, поиска, подзаголовков и основные шаблоны регулярных выражений.

Основные методы модуля re

Стандартные функциональные интерфейсы в библиотеке re для текстовых запросов.

Метод/ФункцияСинтаксисОписание
search()re.search(pattern, string)Сканирует входную строку, чтобы найти первое место, где соответствует шаблону регулярного выражения.
match()re.match(pattern, string)Определяет, соответствует ли шаблон регулярного выражения, начиная с начала строки.
findall()re.findall(pattern, string)Находит все непересекающиеся совпадения шаблона, возвращая список совпадений.
finditer()re.finditer(pattern, string)Возвращает итератор, возвращающий экземпляры MatchObject для всех совпадений.
sub()re.sub(pattern, repl, string)Заменяет все вхождения шаблона в строке на repl.
compile()re.compile(pattern)Компилирует шаблон регулярного выражения в объект регулярного выражения для повторного использования.

Метасимволы и сокращения регулярных выражений

Строительные блоки для построения шаблонов поиска.

Метод/ФункцияСинтаксисОписание
.Match any characterСоответствует любому одиночному символу, кроме символа новой строки.
^ / $Anchor start / endСоответствует началу строки (^) и концу строки ($).
* / + / ?QuantifiersПредставляет 0 или более (*), 1 или более (+) или 0 или 1 (?) повторений.
\dDigit characterЭквивалент класса [0-9].
\wAlphanumeric characterСоответствует буквенно-цифровым символам и знакам подчеркивания.
\sWhitespace characterСоответствует пробелам, табуляции и символам новой строки.

Интерактивный демонстрационный сценарий

# search()
re.search(pattern, string)

# match()
re.match(pattern, string)

# findall()
re.findall(pattern, string)

# finditer()
re.finditer(pattern, string)

# sub()
re.sub(pattern, repl, string)

# compile()
re.compile(pattern)

# .
Match any character

# ^ / $
Anchor start / end

# * / + / ?
Quantifiers

# \d
Digit character

# \w
Alphanumeric character

# \s
Whitespace character

Часто задаваемые вопросы

В чем разница между re.match() и re.search()?

re.match() проверяет совпадение только в начале строки, а re.search() сканирует всю строку на наличие совпадений в любом месте.

Как мне захватить выходные данные группы в соответствии с регулярным выражением?

Используйте круглые скобки () в своем шаблоне для определения групп и извлекайте их с помощью match_obj.group(1), match_obj.group(2) и т. д.

Связанные темы

Рекомендуемые ресурсы Python

Расширьте свои знания с помощью соответствующих интерактивных руководств, шпаргалок и сравнений кода.