在Regex Expression中替换换行

时间:2018-01-04 00:03:49

标签: regex vb.net

我不太了解正则表达式并且不需要知道,但我有一个特殊情况,我希望有人可以提供帮助。这就是我需要做的事情:

  1. 对于单个换行的每次出现 - 也就是说,不是两个连续换行 - 剥离它。

  2. 对于多次连续换行的每次出现,请将其替换为单一换行符。

  3. 是否有表达式或几个表达式可用于执行此操作?

1 个答案:

答案 0 :(得分:2)

您可以使用

Regex.Replace(s, "(\r?\n){2,}|\r?\n", "$1")

请参阅regex demo

<强>详情

  • (\r?\n){2,} - 2个或更多CRLF / LF换行符序列(此处的捕获组仅捕获单个CRLF / LF实例,捕获的最后一个实例将保留在生成的字符串中,插入{{1 }})
  • $1 - 或(如果上述替代方案不匹配)
  • | - 单个CRLF / LF换行符