gpt4 book ai didi

javascript - 所有字符和空白字符的正则表达式模式,直到双换行符

转载 作者:行者123 更新时间:2023-11-30 19:50:02 27 4
gpt4 key购买 nike

带有以下文字:

** First Header
------------------------------------------------------------

(https://www.stackoverflow.com) Stack Overflow

Description: Stack Overflow

Google (https://www.google.com)

Description: Google


** Second Header

...我如何使用正则表达式匹配直到第二个 header 带有双换行符,所以输出如下:

** First Header
------------------------------------------------------------

(https://www.stackoverflow.com) Stack Overflow

Description: Stack Overflow

Google (https://www.google.com)

Description: Google

使用以下正则表达式(将第一个 header 与所有字符以及空白字符匹配,因此 \s\S 与后续正则表达式文字的用法,以及双线中断的负面前瞻),我觉得我绝对是在正确的轨道上:

RegExp("\\*\\* First Header[\\s\\S]*?(\\r?\\n(?!\\r?\\n))")

...但只输出:

** First Header

最佳答案

你可以使用

/(\*\* First Header[\s\S]*?)(?:\r?\n){3}/

或者只兼容 JS 正则表达式

/(\*\* First Header[^]*?)(?:\r?\n){3}/

参见 regex demo

详情

  • (\*\* First Header[\s\S]*?) - 第 1 组捕获:
    • \*\* First Header - 文字 ** First Header 子字符串
    • [\s\S]*? - 任何 0+ 个字符,尽可能少
  • (?:\r?\n){3} - 出现三个可选的 CR,后跟 LF 字符(因此,有效匹配两个空行)。

关于javascript - 所有字符和空白字符的正则表达式模式,直到双换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54579242/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com