gpt4 book ai didi

python - 遍历由两个关键字分隔的条目的最佳方法?

转载 作者:太空宇宙 更新时间:2023-11-04 09:19:44 25 4
gpt4 key购买 nike

文本文件内容:

&CRB  A='test1'   B=123,345, 678   &END
Misc text potentially between entries ...
&CRB A='test2'
B=788, 345, 3424 &END
&CRB A='test3'
B=788, 345, 3424 &END
&CRB A='test4' B=788, 345, 3424 &END

遍历关键字之间条目的最有效方法是什么?笔记一些条目跨行。需要类似以下内容 -

f = open(filename)
for entry in f:
- do something with entry

当然没那么容易。但是,是否有关于以直接方式遍历由两个关键字分隔的条目的建议。

最佳答案

假设条目是 &CRB&END 对之间的所有文本,您可以像这样提取它们之间的文本:

import re

# the regular expression treats newlines as a regular character, so the
# multiline entries are okay. It's non-greedy, so it gets individual entries.
pat = re.compile(r'&CRB(.+?)&END', re.DOTALL)

s = ''' &CRB A='test1' B=123,345, 678 &END
Misc text potentially between entries ...
&CRB A='test2'
B=788, 345, 3424 &END
&CRB A='test3'
B=788, 345, 3424 &END
&CRB A='test4' B=788, 345, 3424 &END'''

for entry in pat.findall(s):
# do something with each entry
print entry

打印这个:

 A='test1'   B=123,345, 678   
A='test2'
B=788, 345, 3424
A='test3'
B=788, 345, 3424
A='test4' B=788, 345, 3424

...清理和解释每条记录的内容是您的问题...

关于python - 遍历由两个关键字分隔的条目的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4233250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com