正则表达式匹配外部括号块

时间:2017-11-08 12:47:21

标签: java regex

我找到了一些正则表达式来匹配括号内的文本块。但是,如果我有一些嵌套括号的字符串,我只想要它的最外部部分。

例如。 "foo bar [first [second] [third]] asdf ]]]]"

我希望能够匹配第一个开口括号和它的右括号之间的文本,使所有内容完好无损。

结果将是:"[first [second] [third]]"

1 个答案:

答案 0 :(得分:2)

经典递归问题(如果支持递归):

\[(?:[^][]*|(?R))*\]

请参阅a demo on regex101.com