【python】邮箱正则验证

时间:2025-03-09 09:35:18

当然可以。以下是一个使用Python正则表达式的例子,用于检查一个字符串是否是一个有效的电子邮件地址:

import re
def is_valid_email(email):
    regex = r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$'
    return bool(re.match(regex, email))
# 测试电子邮件地址
emails = ['example@', 'invalid-email', '@', '@.com']
for email in emails:
    print(f"Email: {email}, Valid: {is_valid_email(email)}")

在这个例子中,is_valid_email函数使用了一个正则表达式来检查字符串email是否符合电子邮件地址的常见格式。正则表达式中的各个部分含义如下:

  • ^[a-zA-Z0-9._%+-]+:匹配邮箱地址的开头,必须是字母、数字、点号、下划线、百分号、加号或减号之一,并且必须以这些字符开头。
  • @:匹配电子邮件地址中的"@"符号。
  • [a-zA-Z0-9.-]+:匹配"@"符号后面的部分,可以是字母、数字、点号或减号。
  • \.:匹配点号,用于分隔域名和*域名。
  • [a-zA-Z]{2,}$:匹配*域名,必须是两个或更多的字母,并且是字符串的结尾。
    函数返回一个布尔值,指示输入的字符串是否匹配正则表达式定义的电子邮件格式。在提供的测试电子邮件列表中,它会打印出每个电子邮件地址是否有效的结果。