3

我在使用空行"\n\n"分隔符拆分文本文件时遇到问题。

re.split("\n", aString) 

有效,但

re.split("\n\n", aString) 

只返回整个字符串。

有任何想法吗?

4

1 回答 1

6

注意不同操作系统的行尾约定

  • 窗口:CRLF ( \r\n)
  • Linux 和其他 Unices:LF ( \n)
  • 旧 Mac:CR ( \r)

您可能失败了,因为您要查找的双换行符位于 Windows 编码的文本文件中,并且将显示为\r\n\r\n,而不是\n\n.

repr()函数将确定您的行尾是什么:

>>> mystring = #[[a line of your file]]
>>> repr(mystring)
"'\\nmulti\\nline\\nstring '"

你确定你不只是想一开始就逐行读取文件吗?

with open(file.txt, 'r') as f:
    for line in f:
        print (line)
于 2012-04-28T22:29:16.680 回答