我正在将txt文件读入python,并希望段落中断一致。有时会有一个,两个,三个,四个......段落之间偶尔有几十或几百个空白行。
显然很容易剥离掉所有的休息时间,但我只能想到“拙劣”的方式让所有东西都断裂(即每个段落之间只有一个空行)。我能想到的就是为不同的断点组合指定多个条带/替换...当断点数量非常大时会变得笨重...或者迭代地去除多余的断点直到剩下两个断点,我想这将是缓慢而且不能特别扩展到成千上万的txt文件...
是否有适度的快速处理[/简单]方法来实现这一目标?
答案 0 :(得分:2)
import re
re.sub(r"([\r\n]){2,}",r"\1\1",x)
你可以试试这个。这里x
将是包含所有段落的字符串。
答案 1 :(得分:1)
这是单向的。
import os
f = open("text.txt")
r = f.read()
pars = [p for p in r.split(os.linesep) if p]
print (os.linesep * 2).join(pars)
这是段落的假设,我们指的是一个不包含换行符的文本块。