Discuss / Python / 作业

作业

Topic source

作业1

re.match(r'^[0-9a-zA-Z]+[0-9a-zA-Z._-]*[0-9a-zA-Z]+@[0-9a-zA-Z]+\.[a-zA-Z]+$', 'bill.gate@gmail.com')

作业2

re.match(r'^(<[a-zA-Z]*\s*[a-zA-Z]+>)\s*[0-9a-zA-Z]+[0-9a-zA-Z._-]*[0-9a-zA-Z]+@[0-9a-zA-Z]+\.[a-zA-Z]+$', '<Tom Paris> bill.gate@gmail.com')

邮件地址的规则其实挺复杂的,见https://stackoverflow.com/questions/2049502/what-characters-are-allowed-in-an-email-address

而各个邮件服务商的规则又是不一样的,比如网易vip邮箱支持连续的dot但不支持数字开头,谷歌邮箱不支持下划线和减号。

以上作业local-part使用较宽容的规则:1、合法的字符为字母数字以及英文句点、下划线和减号这三个特殊符号,2、特殊符号不能作为开头或结尾。


  • 1

Reply