python 正则表达式实现简单的邮箱分类
题目要求
一个文件中含有若干163邮箱,百度邮箱和QQ邮箱,利用正则表达式实现分类并储存在不同的文件内。
源代码
import re
file = open('emile.TXT','r')
f = file.read()
def choseEmile(file):
"""选择出文件中的163邮箱并写入emile163文件"""
file163 = re.findall(r"^[a-zA-z]\w{5,17}@163.com",file,flags=re.M)
for i in file163:
i += '\n' #给每个邮箱后面追加\n,实现换行写入
write163 = open('emile163.TXT','a')
write163.writelines(i)
write163.close()
"""选择出文件中的QQ邮箱并写入emileQQ文件"""
fileQQ = re.findall(r"^[1-9]\d{4,9}@qq.com",file,flags=re.M)
for i in fileQQ:
i += '\n'
writeQQ = open('emileQQ.TXT', 'a')
writeQQ.writelines(i)
writeQQ.close()
"""选择出文件中的百度邮箱并写入emilebaidu文件"""
fileBaidu = re.findall(r"^[a-zA-Z]\w{3,17}@baidu.com", file, flags=re.M)
for i in fileBaidu:
i += '\n'
writeBaidu = open('emilebaidu.TXT', 'a')
writeBaidu.writelines(i)
writeBaidu.close()
choseEmile(f)