所以我在MarkDown中有一些文本,我想将标题分成字符串数组,但包括标题之间的内容。 因此,对于以下示例:
**Header 1**Lots of text here.\n**Header 2**More and more text here..\n**Header 3** etc..
我最想得到的是一系列:
**Header 1**Lots of text here.\n
**Header 2**More and more text here..\n
**Header 3** etc..
我正在尝试的是(?< = \ * {1,10}。 \ {1,10})虽然我觉得在那里应该有类似的东西[^ * {2}]包含每个字符,但最多只包含2 *(标题的结尾)。 \ n不能保证在标题之前,所以我对如何做到这一点感到有些困惑。
非常感谢任何帮助:)
答案 0 :(得分:0)
您可以尝试使用这种基于前瞻性的正则表达式进行匹配:
((?:\*\*.+?(?=\*\*|$)){2,})
(?=\*\*|$)
是积极的先行断言,可以匹配任何文字,直到我们点击\*\*
或行尾。{2,}
的范围将确保匹配文字中至少有两个**
答案 1 :(得分:0)
检查一下:
(* {2} + * {2} *。?。?)(= * {2} |?$)/ GI
它获取2对**之后的所有内容以及跟随它的文本,直到找到另一个**或行尾。保持$条件以捕获最后一组是非常重要的(当你没有任何标题时)。