分享分享分享
那就是批量处理txt文本啦,获取里面指定内容,然后进行保存。刚开始拿到,发现无从下手。整理了思路后发现还是可以做的,嘿嘿!
首先文本里的内容是这样的:
要取的内容就是最后的那些数字。还好每个文档的格式都是规范的,其实不规范也是差不多的。因为我用的是正则来匹配,如下图:
然后就是开始写代码啦!这里就直接上代码了!因为注释全在代码上啦!
import os
import re
path = "D:\\大一下学期\\课程\\new\\" # 找到txt所在位置
files = os.listdir(path) # 得到文件夹下所有txt
i = 0 # 定义变量
for file in files: # 让txt循环起来
i += 1 # 用于后续查看完成进度
position = path + '\\' + file # 构造绝对路径
# print(position)
f1 = open(position, "r", encoding='utf-8') # 打开并读取文件信息
data = f1.read() # 读取信息
# print(data)
parrern = "[123456789].*\-[0-9].[0-9]{1}.*.[0-9]{3}.*.[0-9]{3}" # 用正则匹配所需要的信息
str2 = re.findall(parrern, data) # 查找所有符合条件的信息
# print(str2)
f2 = open("提取的信息.text", "a+", encoding="utf-8") # 打开并写入信息
# print(";".join(str2).replace(";", "\n"))
f2.write(";".join(str2).replace(";", "\n") + "\n") # 先转为非数组类型,再用分行输出
print("完成" + str(i))
f2.close() # 有开就有关
f1.close() # 有开就有关
文中有解释不到位的地方,欢迎各位大佬们的指正哦。
之后还会继续分享自己学习路程,让自己不断成长!
冲呀冲呀冲呀!