正则表达式在最后一次出现的文本之间

时间:2016-03-09 21:50:25

标签: regex

我有这个测试字符串

[list][*] This is [bracket text][/list]

我想抓住所有[*],然后追到最后[

我正在使用此正则表达式\[\*(:[^\[]+)?\]([^\[]+),它只抓取到第一个[并且不在字符串的[bracket text]部分

我需要匹配为This is [bracket text]

关于如何实现这一目标的任何想法

1 个答案:

答案 0 :(得分:2)

你可以使用这个贪婪的正则表达式进行前瞻:

\[\*\] *(.*)(?=\[)

.*贪婪,以确保匹配,直到使用前瞻声明最后[断言。

RegEx Demo