krisjack 2022-02-26 01:51 采纳率: 50%
浏览 95
已结题

批量提取多个TXT 文本中指定内容 导出为一个TXT

多个TXT 批量提取文本中的某些内容 导出为一个txt 文本或者别的格式 该怎么实现

img

  • 写回答

3条回答 默认 最新

  • 关注

    os.listdir(path)遍历文件夹中多个TXT 用正则提取文本中的指定内容

    你题目的解答代码如下:

    #-*- coding:utf-8 -*-
    import os
    import re
    rs = ""
    path = r"E:/xxx" #读取txt文件的目录路径
    FileNames=os.listdir(path)
    for fn in FileNames:
        if fn.endswith('.txt'):
            fullfilename=os.path.join(path,fn)
            print(fullfilename)
            with open(fullfilename, 'r', encoding='utf-8') as fileObj:
                text = fileObj.read()
            card = re.findall(r'Card:(.+)',text)
            exp = re.findall(r'Exp:(.+)',text)
            coding = re.findall(r'Coding:(.+)',text)
            zip = re.findall(r'zip:(.+)',text)
            if len(card)>0 and len(exp)>0 and len(coding)>0 and len(zip)>0:
                rs += card[0] + "|" + exp[0] + "|" + coding[0] + "|" +zip[0] + "\n"
    print(rs)
    with open(r'data.txt', 'w', encoding='utf-8') as fileObj:
        fileObj.write(rs)
    

    如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月21日
  • 已采纳回答 11月21日
  • 创建了问题 2月26日