Member 13853236 Ответов: 1

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


я хочу распечатать все действительные идентификаторы электронной почты, которые заканчиваются на @gmail.com из файла с именем mbox.txt
я попытался сделать это следующим образом, но получил неправильный вывод.Как мне это исправить?

Что я уже пробовал:



import re

def validitycheck():
        fhandle = open(r"C:\\Users\\Aishwarya\Desktop\\temp.txt")
        for line in fhandle:
          if line.endswith("@gmail.com"):
            print (line)
            line = mailid
            pattern = re.compile(r"[\w.-]+@[\w.-]+.\w+@gmail.com")
            matchobject = pattern.match(mailid)
            
            if(matchobject):
                print("your mail id",line,"is valid")
            else:
                print("your mail id is invalid")
          else:
             print("no mail id as such")

validitycheck()

1 Ответов

Рейтинг:
1

OriginalGriff

Почему ваше регулярное выражение содержит два символа"@"? Это законно, но только в пределах строки в кавычках как части локальной строки: Адрес электронной почты - Википедия[^]
Не

[\w.-]+@gmail\.com
более уместно?


Member 13853236

я изменил код на этот:


импорт заново
fhandle = open(r"C:\\Users\\Aishwarya\Desktop\\aish.txt")
деф validitycheck():
для линии в fhandle:
класс MyList = линия.сплит()
печати(списке "мой список")


шаблон = ре.компиляции ("ж\*|\д+@gmail.com")
matchobject = шаблон.матч(списке "мой список")
if (matchobject):
print("все почтовые идентификаторы:",mylist)




validitycheck()