regex - 替换正则表达式中的换行符

标签 regex vb.net

我对正则表达式了解不多,也没有太多需要了解,但我有一个特定的场景,希望有人可以提供帮助。这是我需要做的:

  1. 对于每次出现的单个换行符(即不是两个连续的换行符),将其删除。

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

是否有一个或多个表达式可以用来执行此操作?

最佳答案

您可以使用

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

请参阅regex demo .

详细信息

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

关于regex - 替换正则表达式中的换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48086913/

相关文章:

asp.net - 您将如何交换连接字符串来访问测试数据库以进行单元测试?

ruby - 使用 mechanize 时使用正则表达式查找具有特定 anchor 的链接

Ruby 正则表达式选择没有 [

java - 如何使用正则表达式从以下内容中提取数据?

公制距离的正则表达式

vb.net - 对于 VB.NET 中二维数组上的每个循环

vb.net - 创建动态 DataGridViewComboBoxCell

node.js - nodejs Express 正则表达式路径 : working in test, 在代码中不起作用。我做错了什么?

vb.net - VB中获取从给定日期开始计算的一年中的周数

javascript - 从 VB.NET 背后的代码调用点击事件或 JQuery 函数