@beckmiller

Как найти все почтовые адреса посредствам регулярных выражений?

Дан адрес сайта содержающий txt файл. Как с помощью регулярных выражений вывести все почтовые адреза из данного файл

Помогите как как именно записать регулярные выражение. И если возможно хороший ресурс для начинающих. Спасибо !
import urllib.request
import re
url = 'http://dfedorov.spb.ru/python/files/mbox-short.txt'
with urllib.request.urlopen(url) as webpage:
    for i in webpage:
        print(i)

Я пока только смог счесть
  • Вопрос задан
  • 226 просмотров
Решения вопроса 1
@sphinx2001
Взял за основу регулярку MadInc и вот скрипт который показывает адреса без дублей

import urllib.request
import re

def lineHasEmail(line):
	if str(line).find('@') != -1:
		return True
	else:
		return False

def parseMails():
	mails = {}
	url = 'http://dfedorov.spb.ru/python/files/mbox-short.txt'
	with urllib.request.urlopen(url) as webpage:
		for i in webpage:
			line = str(i)
			if lineHasEmail(line):
				mail = re.findall(r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b', line) 
				for m in mail:
					mails[m] = ''
				#print(mail, str(line))
	for mail in mails:
		print(mail)

if __name__ == "__main__":
	parseMails()
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
попробуй регулярку
re.findall(r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b', 'Строка поиска')
Ответ написан
Комментировать
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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