【问题标题】:Write text between second instance of a word and another word from one text file to another在一个单词的第二个实例和另一个单词之间从一个文本文件写入另一个文本
【发布时间】:2019-08-25 14:27:02
【问题描述】:

我有一个大文本文件,但我只需要在短语的第二个或第 n 个实例之后开始并在另一个特定短语处结束的文本。然后我想将该文本写入另一个文本文件。

例如

我想要短语 Item 1第二个实例 和短语 Item 2 之间的文本。

输入文字

Item 1: Lorem ipsum dolor sit amet,   Item 1   
ut labore et dolore magna aliqua.     Item 2
ut enim ad minim veniam, quis nostrud 

预期输出

ut labore et dolore magna aliqua.

有问题的文本文件非常大,所以我一直在研究如何按照here 的建议使用itertools,但我不确定这对于大型文本文件是否有效。

【问题讨论】:

  • 为什么会有两个Item 1 标签,我们能否始终确定您要捕获的文本会出现在最后一个 Item 1 之后?
  • 文本文件有一个目录,其中提到了Items,因此它总是有多个。它不一定会在最后一个Item 1 之后发生。我会编辑并重新措辞,感谢您的举报。

标签: python python-3.x


【解决方案1】:

假设test.txt 将包含输入文本,要获得所需的输出,您可以使用readlines()

with open('test.txt', 'r') as f:
    lines = f.readlines()

print(*lines[1].split()[:-2])

【讨论】:

  • 这可能是一个解决方案,但我认为它不会完成我需要的工作,因为.readlines 会立即将整个文档读入内存,这使其成为一种非常低效的方法这个。
猜你喜欢
  • 2019-06-24
  • 1970-01-01
  • 1970-01-01
  • 2013-09-03
  • 1970-01-01
  • 2012-11-27
  • 2022-11-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多