【问题标题】:Regex, searching for multiple newlines正则表达式,搜索多个换行符
【发布时间】:2015-10-07 12:23:12
【问题描述】:

我有一个搜索换行符的正则表达式:

\r?\n|\r

还有两个例子:

#Example-1#
The correct answer is (B) 2 to 3. jfbgfdgdf sgdsgsd.

jfbgfdgdf sgdsgsd.
#End Example-1#

#Example-2#
The correct answer is (B) 2 to 3. jfbgfdgdf sgdsgsd.
jfbgfdgdf sgdsgsd.
#End Example-2#

演示:https://regex101.com/r/zQ3nR3/1

我需要更新一个正则表达式,所以它只找到多个换行符实例,就像示例 1 中的文本行之间的实例,而不是示例 2 中的文本行之间的实例

【问题讨论】:

  • 你可以使用像 \\s{2,} 这样的大括号。这只会找到两个或更多的空白实例

标签: javascript regex text


【解决方案1】:
(\r?\n|\r)\d*(\r?\n|\r)

应该可以解决问题,请参阅https://regex101.com/r/zQ3nR3/3

它以您的方式搜索换行符,然后是任意数量的空格,然后是另一个空行。


((\r?\n|\r)\d*)+(\r?\n|\r)

将搜索多个空行(但它们可以包含任何空格),请参阅https://regex101.com/r/zQ3nR3/4

【讨论】:

    【解决方案2】:

    要仅匹配 #Example 文本中的多个换行符,请使用限制量词 {2,} 应用于 (?:\r?\n|\r) 并通过前瞻限制它:

    (\r?\n|\r){2,}(?!#Example-\d)
    

    demo

    仅当多个换行符后没有 #Example-+digit 时,(?!#Example-\d) 前瞻才会返回匹配项。

    【讨论】:

      猜你喜欢
      • 2011-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多