Lot*_*ice 0 python regex email-validation
下面有一个代码片段,当您输入电子邮件地址(例如 email@gmail.com)时,它会说它是有效的。
但是,如果我输入电子邮件地址(例如 email@students.school.edu),它会说该地址无效。我用我自己的学校电子邮件地址尝试了这个,其中有两个句点,它说它无效。
有没有一种方法可以使用正则表达式验证带有一个句点的常规电子邮件地址和带有两个句点的电子邮件地址,如下所示?
import re
email = input ("Type in an email address: ")
if re.match("\A(?P<name>[\w\-_]+)@(?P<domain>[\w\-_]+).(?P<toplevel>[\w]+)\Z",email,re.IGNORECASE):
print("Email is valid")
else:
print("Email is invalid")
Run Code Online (Sandbox Code Playgroud)
您可以使用 python 正则表达式标准来发送电子邮件:
r"(^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)
Run Code Online (Sandbox Code Playgroud)
来源: https: //emailregex.com/
因此,在您的原始片段的上下文中,它将是:
import re
email = input ("Type in an email address: ")
if re.match(r"(^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)", email):
print("Email is valid")
else:
print("Email is invalid")
Run Code Online (Sandbox Code Playgroud)