第一题:
import re def is_valid_email(addr): if re.match(r'^\w[\w\.]*@\w+\.\w{1,3}$',addr): return True # 测试: assert is_valid_email('someone@gmail.com') assert is_valid_email('bill.gates@microsoft.com') assert not is_valid_email('bob#example.com') assert not is_valid_email('mr-bob@example.com') print('ok')
第二题:
import re def name_of_email(addr): k=re.compile(r'<([\w][\w\s]+[\w])>\s?\w[\w\.]*@\w+\.\w{1,3}') q=re.compile(r'(\w[\w\.]*)@\w+\.\w{1,3}') if k.match(addr): return k.match(addr).group(1) elif q.match(addr): return q.match(addr).group(1) return None # 测试: assert name_of_email('<Tom Paris> tom@voyager.org') == 'Tom Paris' assert name_of_email('tom@voyager.org') == 'tom' print('ok')
Sign in to make a reply
科维扎基哈得那奇
第一题:
第二题: