Сообщить об ошибке.

Функция escape() модуля re в Python

Экранирование специальных символов регулярных выражений

Синтаксис:

import re

re.escape(pattern)

Параметры:

  • pattern - строка с шаблоном регулярного выражения.

Возвращаемое значение:

Описание:

Функция escape() модуля re выполняет экранирование специальных символов в шаблоне. Это полезно, если требуется сопоставить произвольную строку литерала, которая может содержать метасимволы регулярных выражений.

Примеры использования:

>>> import re
>>> print(re.escape('http://www.python.org'))
# http://www\.python\.org

>>> import string
>>> legal_chars = string.ascii_lowercase + string.digits + "!#$%&'*+-.^_`|~:"
>>> print('[%s]+' % re.escape(legal_chars))
# [abcdefghijklmnopqrstuvwxyz0123456789!\#\$%\&'\*\+\-\.\^_`\|\~:]+

>>> operators = ['+', '-', '*', '/', '**']
>>> print('|'.join(map(re.escape, sorted(operators, reverse=True))))
# /|\-|\+|\*\*|\*

Функция escape() не должна использоваться для замены строки в re.sub() и re.subn(), только обратные косые черты должны быть экранированы. Например:

>>> digits_re = r'\d+'
>>> sample = '/usr/sbin/sendmail - 0 errors, 12 warnings'
>>> import re
>>> print(re.sub(digits_re, digits_re.replace('\\', r'\\'), sample))
# /usr/sbin/sendmail - \d+ errors, \d+ warnings