第一题:
# 验证email地址
import re
def is_valid_email(addr):
if re.match(r'[a-z\.]+@[a-z\.]+\.com',addr)!=None:
returnTrue
else:
returnFalse
assert is_valid_email('someone@gmail.com')
assert is_valid_email('bill.gates@microsoft.com')
assertnot is_valid_email('bob#example.com')
assertnot is_valid_email('mr-bob@example.com')
print('ok')
第二题:
# 提取出带名字的Email地址
# <Tom Paris> tom@voyager.org => Tom Paris
# bob@example.com => bob
findandspi=re.compile('^<([a-zA-Z\s]+)>\s*\w+@([a-zA-Z]+)\.org$')
findandspi2=re.compile('([a-zA-Z]+)@([a-zA-Z]+)\.org$')
def name_of_email(addr):
if findandspi.match(addr):
return findandspi.match(addr).group(1)
if findandspi2.match(addr):
return findandspi2.match(addr).group(1)
returnNone
assert name_of_email('<Tom Paris> tom@voyager.org') == 'Tom Paris'
assert name_of_email('tom@voyager.org') == 'tom'
Sign in to make a reply
用户7163945647
第一题:
# 验证email地址
import re
def is_valid_email(addr):
if re.match(r'[a-z\.]+@[a-z\.]+\.com',addr)!=None:
returnTrue
else:
returnFalse
assert is_valid_email('someone@gmail.com')
assert is_valid_email('bill.gates@microsoft.com')
assertnot is_valid_email('bob#example.com')
assertnot is_valid_email('mr-bob@example.com')
print('ok')
第二题:
# 提取出带名字的Email地址
# <Tom Paris> tom@voyager.org => Tom Paris
# bob@example.com => bob
findandspi=re.compile('^<([a-zA-Z\s]+)>\s*\w+@([a-zA-Z]+)\.org$')
findandspi2=re.compile('([a-zA-Z]+)@([a-zA-Z]+)\.org$')
def name_of_email(addr):
if findandspi.match(addr):
return findandspi.match(addr).group(1)
if findandspi2.match(addr):
return findandspi2.match(addr).group(1)
returnNone
assert name_of_email('<Tom Paris> tom@voyager.org') == 'Tom Paris'
assert name_of_email('tom@voyager.org') == 'tom'
print('ok')