gpt4 book ai didi

java - 用于在特定标题下获取字符串的正则表达式(直到空行)

转载 作者:行者123 更新时间:2023-12-01 12:30:56 25 4
gpt4 key购买 nike

我有一个这样的字符串

Heading_1:   content1   content2   ...   ...Heading_2:  content1  content2  ....Heading_x:  content1  content2  ....  ...  contentnHeading_n:  ........  ........

我必须获取标题x下的所有字符串(直到出现空行),即content1到contentn。我尝试过这样的

“((?s)headingx:.\s([^\n]*))”

但它不起作用

最佳答案

您需要添加正向前瞻来检查字符串后面是否有空行。

(?s)Heading_[^:]*:[^\\n]*\\n(.*?)(?=\\n\\n)

DEMO

如果您还想要最后一个标题的内容(后面没有空行),那么您需要在前瞻中添加一个 $

(?s)Heading_[^:]*:[^\\n]*\\n(.*?)(?=\\n\\n|$)

DEMO

说明:

  • (?s) DOTALL 修饰符,它使点甚至可以匹配换行符。
  • Heading_[^:]*:[^\\n]*\\n 这只匹配包含换行符的标题行。
  • (.*?)(?=\\n\\n) 捕获后面的任何字符,直到到达空行。如果换行符后面紧跟着另一个换行符,则它必须是空行。

关于java - 用于在特定标题下获取字符串的正则表达式(直到空行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25926961/

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