Поиск и замена текста

Python:
Поиск и замена текста

Как это сделать:

# Использование str.replace() для простой замены
text = "Мне нравится Python. Python - это здорово!"
text = text.replace("Python", "программирование")
print(text)  # Вывод: Мне нравится программирование. Программирование - это здорово!

# Использование re.sub() для замены по шаблону с регулярными выражениями
import re
text = "Связаться с нами можно по адресу [email protected]"
new_text = re.sub(r'\b[a-zA-Z0-9.-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}\b', '[email protected]', text)
print(new_text)  # Вывод: Связаться с нами можно по адресу [email protected]

Погружение в детали

В ранние дни программирования редактирование текста было ручной работой. Введите регулярные выражения (regex), созданные в 1950-х годах, которые сделали поиск менее мучительным. Для простых замен используйте str.replace(). Это просто и отлично подходит для единичных замен. Когда у вас есть шаблоны, такие как номера телефонов, электронные адреса или даты, re.sub() с regex становится волшебной палочкой. Он находит шаблоны с помощью специального синтаксиса и заменяет их. Имейте в виду, что regex может быть таким же капризным, как и могущественным; это инструмент, в котором вы становитесь лучше с каждой решенной задачей.

См. также