使用re验证电子邮件

时间:2017-02-10 22:27:22

标签: python regex

在python中如何解决这个问题

import re

rule = "[A-Z+][\@][A-Z+][\.][A-Z+]"

inputu = input ("please enter your email:").upper()

if re.search (rule, inputu):
    print ("Invalid")

else:
    print ("Valid")

我想尝试制作它,这样你就可以放A-Z然后它会找到@然后是A-z。那么A-Z

1 个答案:

答案 0 :(得分:1)

要使这项工作成功,您可以在括号外移动加号:

rule = r"[A-Z]+\@[A-Z]+\.[A-Z]+"

但请注意,电子邮件地址还可以包含其他字符,例如数字和句点。更好的规则是:

rule = r"^[A-Z0-9\._+ '\"-]+\@[A-Z0-9]+\.[A-Z0-9]+"

这将检查在字符串的开头是否有一些由字母,数字或句号,下划线,短划线,加号​​,空格或单引号或双引号组成的子字符串。然后一个@。然后是另一个由字母和数字组成的子串。然后一段时间。然后最后另一个子串完全由字符串末尾的字母组成。

但请注意,这仍然不代表地址有效。只有它可能是。如果您确实需要验证电子邮件地址,唯一的方法是向他们发送电子邮件,并让他们回复。