如何使用grep/egrep查找不正确的电子邮件地址?

问题描述:

所以我有一个非常大的数据库,问题是找出不正确的格式电子邮件地址。请帮助我,谢谢!如何使用grep/egrep查找不正确的电子邮件地址?

1:有多少条记录的电子邮件地址不正确(行中有@,但格式不正确)?电子邮件地址具有用户标识,而域名可以由字母,数字,句点和破折号组成。一个电子邮件地址应该有一个*域名(something.top-leveldomain)。*域名的格式为:com,org,edu等,

我知道如何找到电子邮件地址:grep -E“\ b [A-Za-z0-9 ._%+ - ] + @ [A-Za-z0-9 .-] +。[A-Za-z] {2,6} \ b“HW1_Data.txt; 但如果我使用grep -E -v“\ b [A-Za-z0-9 ._%+ - ] + @ [A-Za-z0-9 .-] +。[A-Za-z] { 2,6} \ b“HW1_Data.txt,我只会得到一切,但电子邮件..所以我只是不知道该怎么办

请运行grep @ HW1_Data.txt获取所有可能是电子邮件的行地址。然后排除无效的。答案是

grep @ HW1_Data.txt | grep -E -v“\ b [A-Za-z0-9._%+ - ] + [A-Za-z0-9 .-] +。[A-Za-z] {2,6} b“

+0

这就是我所做的......,但这个命令只会得到一切,但电子邮件!我需要得到不正确的格式电子邮件 – James