正则表达式使所有新行相同

时间:2012-07-16 19:37:39

标签: c# regex newline linefeed

我必须格式化几个人已经抛弃的编程代码。所以我必须确保没有双重空格,所有类都有注释等等。无论如何我很难创建这个查找并替换因为新线...换句话说,一些块有:

   // this is some comment \r\n
   // some other line \r\n

其他块只有:

  // bla bla bla \n
  // bla bla bla \n

其他块

 // bla bla bla \r
 // bla bla bla \r

最后其他的块有

 // bla bla \n\r
 // bla bla \n\r

由于这种差异,我很难创建正则表达式。

所以我的问题是如何将所有可能性(\r\n\n\r\n\r)替换为\ r \ n?这样:

        var a = "\n\r\n\rHelloWorld";
        var b = "\r\n\n\rHelloWorld";
        var c = "\r\rHelloWorld";
        var d = "\n\nHelloWorld";

所有结果都是:"\r\n\r\nHelloWorld"

请注意所有变量a,b,c和d =

->
->
-> HelloWorld

它们在视觉工作室看起来都一样......

1 个答案:

答案 0 :(得分:3)

我认为您需要做的是替换CR,可能后跟LF,或LF可能后跟CR:

搜索:\r\n?|\n\r?

替换:\r\n