![](/img/trans.png)
[英]How to create python executable from a .py file that need to read and write .txt files in a separate folder
[英]parse from a huge txt file and write each output in separate files
如何从巨大的 txt 文件中提取多行字符串并将每个找到的模式写入单独的文件中?
从源文件 (example.txt) 中提取的示例:
RIG 1C 0
RIC 1 F
RIB F F
RIB A F
RIB O O
RIC 2 C
RIB J J
RIB C J
RIB D C
RIB Z D
RIB R Z
RIB I I
RIB S S
RIC 3 Y
RIB Y Y
RIB M Y
RIB L M
RIB H L
RIB K H
RIB B K
RIB W B
RIB Q W
RIB V Q
RIB N V
RIB G B
RIB T B
RIB X X
RIG 1C 1
RIC 1 F
RIB F F
RIB A F
RIB O O
RIC 2 C
RIB J J
RIB C J
RIB D C
RIB Z D
RIB R Z
RIB I I
RIB S S
RIC 3 Y
RIB Y Y
RIB M Y
RIB L M
RIB H L
RIB K H
RIB B K
RIB W B
RIB Q W
RIB V Q
RIB N V
RIB G B
RIB T B
RIB X X
RIG DE 0
RIC 1 F
RIB F F
RIC 2 C
RIB C C
模式从 RIG 到 RIG
这意味着第一个文件 RIG1C0.txt 包含:
RIG 1C 0
RIC 1 F
RIB F F
RIB A F
RIB O O
RIC 2 C
RIB J J
RIB C J
RIB D C
RIB Z D
RIB R Z
RIB I I
RIB S S
RIC 3 Y
RIB Y Y
RIB M Y
RIB L M
RIB H L
RIB K H
RIB B K
RIB W B
RIB Q W
RIB V Q
RIB N V
RIB G B
RIB T B
RIB X X
第二个文件 RIG1C1.txt:
RIG 1C 1
RIC 1 F
RIB F F
RIB A F
RIB O O
RIC 2 C
RIB J J
RIB C J
RIB D C
RIB Z D
RIB R Z
RIB I I
RIB S S
RIC 3 Y
RIB Y Y
RIB M Y
RIB L M
RIB H L
RIB K H
RIB B K
RIB W B
RIB Q W
RIB V Q
RIB N V
RIB G B
RIB T B
RIB X X
等等。
我听说了一些关于 RegEx 的事情
有人可以帮助我吗?
没有正则表达式的最简单方法,只有 python 内置模块:
from pathlib import Path
# File Contents as String
originalFile=Path("path/to/file.txt").read_text()
for i,subFileContents in enumerate(originalFile.split("RIG")):
# First RIG could be empty String
if subFileContents:
# Attach the searched Keyword again
temp="RIG"+subFileContents
# format String zeropadded number exactly 5 digits
with open(f"RIG1C{i:05}.txt", "w") as f:
f.write(temp)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.