Я создал шаблон для удаления писем из списка, отвечающего определенным условиям. Чтобы сделать его кратким, я применил шаблон к электронному списку рассылки, чтобы отфильтровать ожидаемые, вместо того, чтобы копировать электронные письма из каталога.
Я пробовал как:
import re
emaillist = ['alex@10mates.com.au','sales@1300easyisp.com.au','jquery@3.4.1','info@ace.com.au','helpdesk@airtel.net.au','info@aussieit.net.au','logo@3x.c185d295.png','nr@seenError']
# pattern = r'[\w\.-]+@[\w\.-]+(?:jpe?g|png|gif|bmp)'
pattern = r'[\w\.-]+@[\w\.-]+(?:com|net).+'
def filter_emails(email):
email = re.findall(pattern,email)
if email:
return email[0]
else:
return "criterion not met"
if __name__ == '__main__':
for email in emaillist:
print(filter_emails(email))
Мало строк содержит png
, jpg
и др. c. который более или менее похож на письмо, от которого я хочу избавиться. Мой закомментированный шаблон может сделать обратное, то есть он захватывает те строки, которые имеют вышеуказанный суффикс. Тем не менее, шаблон, который я использовал для выделения нужных писем, делает свое дело, но они не всегда могут содержать com
или net
.
Вопрос: Как я могу объединить два шаблона таким образом, чтобы он расставил приоритеты (не подчеркивая, так как два суффикса могут не всегда быть там), те строки, которые содержат com
или net
, но игнорируют их, которые содержат png
, jpg
et c.?