Text 用CR LF替换CR

Text 用CR LF替换CR,text,Text,我在Windows上,我有一个奇怪的文本文件,其中大部分包含CR+LF行结尾。少数几行仅以CR结尾。使用哪种工具将这些奇数行转换为格式良好的(例如CR+LF端接)行 我可以使用GnuWin32工具或Python来解决这个问题 我遇到的主要问题是,我无法将文件作为文本文件打开,因为Python(因为大多数其他文本处理器,如awk)不识别混合行结尾。因此,我认为解决方案必须包含文件的二进制处理 同样,我不能仅仅用CR-LF替换CR,因为也存在CR-LF行结束符,不能触摸。要替换行,可以使用正则表达式

我在Windows上,我有一个奇怪的文本文件,其中大部分包含CR+LF行结尾。少数几行仅以CR结尾。使用哪种工具将这些奇数行转换为格式良好的(例如CR+LF端接)行

我可以使用GnuWin32工具或Python来解决这个问题

我遇到的主要问题是,我无法将文件作为文本文件打开,因为Python(因为大多数其他文本处理器,如awk)不识别混合行结尾。因此,我认为解决方案必须包含文件的二进制处理


同样,我不能仅仅用CR-LF替换CR,因为也存在CR-LF行结束符,不能触摸。

要替换行,可以使用正则表达式:

  • \r+
    查找CR
  • \r\n
    是您想要作为替换文本的文本

Python中的正则表达式:



你可以试试记事本++。它可以很好地处理“奇怪”的文件,并且里面有工具来修复这些奇怪的东西。+1对于Notepad++,我经常使用它来处理类似的事情。除了Python之外,你还能使用其他语言吗?在Java中实现这一点是没有问题的,正如我所发布的,应该使用一个可以在脚本中使用的工具,GnuWin32工具或Python。没有其他可用项。如果只使用[\r]+作为正则表达式来搜索(请参阅我的原始问题:我需要用CR+LF替换CR),它会起作用。它不会也将先前存在的
\r\n
替换为
\r\n
import re
txt='text where you want to replace the linebreak'
out = re.sub("\r+", '\r\n', txt)
print out