在Python中进行标记

时间:2016-01-22 10:57:45

标签: python

我有一个包含32个文档的文本文件,我希望Python能够注意到它。因此,我正在搜索一个标记化过程,以检测新文档的开始和结束时间。

enter image description here

正如我们在图像中看到的,每个文档都以组合开头:32个文档的数量。在图像中我只是展示了第二份文件的石南花。下一个文档将从32个文档中的3个开始,依此类推。任何人都可以帮我开发一个简单的代码,以便Python认识到有32篇文章吗?

1 个答案:

答案 0 :(得分:2)

解决此问题的一种方法:

  1. 逐行阅读文件
  2. 检查每一行是否与X of Y documents匹配。
  3. 如果是,请启动包含该行的新列表,并将上一个列表添加到文档列表中。
  4. 如果没有,请将该行附加到您已启动的列表
  5. 转到2.,直到您到达文件末尾。
  6. 所以,例如:

    import re
    sections = []
    current = []
    with open("myfile.txt") as f:
        for line in f:
            if re.search(r"(?i)\d+ of \d+ documents", line):
                sections.append("".join(current))
                current = [line]
            else:
                current.append(line)
        if current:
            sections.append("".join(current))