Python正则表达式是否匹配一个或多个换行符?

Python正则表达式是否匹配一个或多个换行符?,python,regex,split,Python,Regex,Split,我想将文本文件拆分为段落,由1行或多行空行分隔。 例如: # file.txt "Paragraph1 Some text Paragraph2 More text Paragraph3 some more text" 我尝试使用正则表达式,但我不确定是否正确。在这个例子中,我试图只打印第二段,但是我得到了一个列表索引超出范围的错误。但是当我打印p[0]时,它会打印整个文本文件。我做错了什么?我应该使用不同的正则表达式吗?或者使用其他方法将文件拆分为段落 打开(文件)作

我想将文本文件拆分为段落,由1行或多行空行分隔。 例如:

# file.txt
"Paragraph1
Some text

Paragraph2
More text

Paragraph3
some more text"
我尝试使用正则表达式,但我不确定是否正确。在这个例子中,我试图只打印第二段,但是我得到了一个
列表索引超出范围的错误。但是当我打印
p[0]
时,它会打印整个文本文件。我做错了什么?我应该使用不同的正则表达式吗?或者使用其他方法将文件拆分为段落

打开(文件)作为f:
text=f.read()
p=文本。拆分([\r\n]+“”)
打印(p[1])

您有一个错误,因为您没有拆分文本(因此没有第二个元素),您可以使用此分隔符:

p = text.split("\n\n")
使用
re.split()


尝试使用下面的方法在文本中添加一个空格

进口稀土

fin=打开(“data.txt”、“rt”) fout=打开(“out.txt”、“wt”)

对于fin中的行: fout.write(re.sub('\s+','',第行))

财务结束()
fout.close()

您拥有的
+
[]
是regex元字符。Python的常规
str.split()
不接受正则表达式参数。啊,我明白了,那么似乎“\n\n”应该可以工作*似乎“\n\n”应该可以工作*正确。
>>> import re
>>> re.split(r'[\r\n][\r\n]+', text)
['Paragraph1\nSome text', 'Pragraph2\nMore text', 'Paragraph3\nsome more text']