正则表达式以获得最后一次出现直到下一个char

时间:2015-06-04 17:26:05

标签: regex regex-lookarounds

我正试图找出这个正则表达式并且卡住了 - 任何人都可以帮忙。

我有一个字符串:

"这是一个带[flag NO MATCH]的字符串,应与[flag THIS]匹配,但不要这样[NO NO]"

我想捕捉括号内的最后一次出现的旗帜。

试过这个:

\[flag(?!.*\[flag)(.*)\]

我几乎就在那里,但这匹配到最后一个"]"在字符串中。我怎样才能让它只匹配下一个"]"比赛结束后。

想要匹配:" THIS"

获取此:" THIS]但不要这样[NO NO"

希望有人可以提供帮助。

由于

1 个答案:

答案 0 :(得分:1)

\[flag(?!.*\[flag)(.*?)\] 非贪婪,

\[flag(?!.*\[flag)\s*([^\]]*)\]

OR

WITH MEMBER SumOfValueTillNow AS
SUM(null:[Date].[Date].CURRENTMEMBER, [Measures].Value)

SELECT SumOfValueTillNow ON 0
FROM [YourCube]
WHERE ([Date].[Date].[2015-01-04])

DEMO