mr-ZA
@mr-ZA

Регулярки python?

Всем привет, в питоне пока разбираюсь плоховато, затык на одном моменте. К примеру у нас есть строка вида:
Jul 10 10:09:08 srv24-s-st postfix/qmgr[3043]: 25E6CDF04F4: from=<testmail@email.ru>, size=617951, nrcpt=1 (queue active)


Как мне из нее найти вывести принтом в консоль с помощью модуля целиком эл.почту (testmail@email.ru)?
Как ее заменить на test@mail.ru? Спасибо!
  • Вопрос задан
  • 128 просмотров
Решения вопроса 1
@yynazare
Вот хорошая статья по регулярным выражениям https://m.habr.com/ru/post/349860/
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@Kostya_KD
import re

raw_string  = 'Jul 10 10:09:08 srv24-s-st postfix/qmgr[3043]: 25E6CDF04F4: from=<testmail@email.ru>, size=617951, nrcpt=1 (queue active)'

email_pattern = re.compile(r'[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+')
email_from_raw_string = email_pattern.search(raw_string).group()
new_string = email_pattern.sub('test@mail.ru', raw_string)

print(email_from_raw_string)
print(new_string)
Ответ написан
попробуйте такую
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы