Discuss / Python / 本节打卡

本节打卡

Topic source

侧步微凉

#1 Created at ... [Delete] [Delete and Lock User]

看了下留言区的答案,有点疑惑,好多人第一题都这么写: 

r'[\w\.]+@\w+\.com'

这么写验证是例子验证是通过了,问题就出在 [\w\.]+ ,类似这种: .xxx@xxx.com 或者 ...xxx@ 乃至 xxx....@等 都可以通过测试, 我想应该不存在这种格式的邮箱,这么明显的问题为什么没人指出来还都认可,而且题目中要求的格式是 xxx 或者 xxx.xxx,可能是小生想多了.....但是有强迫症的银真的忍不住.....,个人观点,不喜勿喷....

# 第一题
def is_valid_email(addr):
    re_mail = re.compile(r'^([a-z]+)(\.[a-z]+|[a-z])(@[a-z]+)\.com$')
    if re_mail.match(addr):
        return True
# 第二题
def name_of_email(addr):
    re_mail = re.compile(r'^(.*?)([a-zA-Z\s]+)(.*)$')
    m = re_mail.match(addr)
    return m.group(2)

第二题看得不是很明白,请问能详细解释一下吗?谢谢

Seayon阿阳

#3 Created at ... [Delete] [Delete and Lock User]

xxx....@  不合常规,但也是合法的邮件地址

zqdllym

#4 Created at ... [Delete] [Delete and Lock User]

我的朋友,你的第一题答案不必加\的

正则里的(.*?)是什么意思?我找到了这个https://zhidao.baidu.com/question/561636351.html


  • 1

Reply