Regex 正则表达式-捕获具有特定字符的组

Regex 正则表达式-捕获具有特定字符的组,regex,regex-group,Regex,Regex Group,我有一根绳子 [ string1] [ string2.0 \ string2.1 ] [ string3] 我希望捕获内容“string2.0\string2.1”,它可以位于字符串中的任何位置,基本上我希望捕获位于“[]”内并具有“\”的组 我有一个正则表达式-(\[.\.\.\.\]),但它捕获了前两个组,其中我只需要第二个组中的字符串。另外,第二组可以出现在任何地方,例如 [ string2.0 \ string2.1 ] [ string1] [ string3] [ string

我有一根绳子

[ string1] [ string2.0 \ string2.1 ] [ string3] 
我希望捕获内容
“string2.0\string2.1”
,它可以位于字符串中的任何位置,基本上我希望捕获位于“[]”内并具有“\”的组

我有一个正则表达式-
(\[.\.\.\.\])
,但它捕获了前两个组,其中我只需要第二个组中的字符串。另外,第二组可以出现在任何地方,例如

[ string2.0 \ string2.1 ] [ string1] [ string3]
[ string1] [ string3] [ string2.0 \ string2.1 ]

谢谢你的帮助

诀窍是用不包括方括号的表达式替换第一个
*?

\[([^[]*\\.*?)]
现在捕获不能包括一个开放的方括号,因此只能捕获一个组