все Python 3reфункция
re.sub
замена
Заменяет все вхождения шаблона в строке на replacement (строку или функцию).
Синтаксис
re.sub(pattern, repl, string, count=0)
Если ни шаблон, ни замена не используют регулярных конструкций, берите str.replace — быстрее и не придётся экранировать точку, плюс или скобки. В строке замены обратный слеш живёт по своим правилам: ссылка на группу пишется \1 или \g<name>, а '\n' без префикса r превратится в настоящий перевод строки. Исходная строка при этом не меняется — результат надо присвоить.
Примеры
import re
print(re.sub(r'\d+', '#', 'a1b22c')) # → a#b#c
print(re.sub(r'\d', '#', 'a1b2c3', count=2)) # → a#b#c3
print(re.sub(r'(\w+)@(\w+)', r'\2:\1', 'user@host')) # → host:user
print(re.sub(r'\d+', lambda m: str(int(m.group()) * 2), 'a2 b10')) # → a4 b20
print(re.sub(r'z+', '-', 'abc')) # → abc
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности