繁体   English   中英

从python中的多个文本文件中提取特定字符串

[英]Extraction of specific string from multiple text files in python

我大约需要90个文本文件,我需要从中提取特定文本。 下面是文本文件之一:

FIRCOSOFT-FOF-ProCESS HDR ./INPUT/201911098765-SWFTNA-ID3751V1_1.DAT   65764645454 FMFILE LINUX  5.7.2.1 H   156898900   0         50K     0 6 -1 WCP002862      1   WORLDCHECK-PREMIUM    EMBARGOJHUHUGHJHHHHHHHH KHH,KHHUHJ
## $$$$  \000000\0000000000000000000000000000000\00000000000   NO :20:9E40FGTE23555CEasw3NN :23B: IHDUHFUEHRUEURH99090SNDNNDB 2019-04-15 FCMBATCH  0101010 01 01 01 0 1 01

我需要提取两个字段:

  1. :20:和:23B之间的文本/数字:
  2. WCP和WORLDCHECK-PREMIUM之间的文本/数字

我正在使用以下代码:

    with open("Test_data.txt", "r", encoding='UTF-8') as fobj:
        text = fobj.read()
    import re
    a = re.compile(':20:(.*) :23B:')
    b=re.compile('WCP(.*)WORLDCHECK-PREMIUM')
    z = a.findall(text)
    k = b.findall(text)
    print (z)
    print (k)

要求的输出:

TEXT_ID=9E40FGTE23555CEasw3NN
WCP=002862      1

我遇到以下问题:

  1. k没有提取任何东西,还有没有更好的方法来提取数据?
  2. 当所需的字符串不存在时,代码给出错误
  3. 由于我需要从90个文件中提取数据,有没有一种方法/函数可以一次从所有文件中提取数据(如上所述,两个字段)并将其传递给excel。

我是python的新手。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM