1
var r = new Regex(@"\{(.*?)\}");
var m = r.Match("{abc}");
Console.WriteLine(m.Groups[0].Value);
而且它让我"{abc}"
,而我希望它得到的东西放在括号里。是不是Value
?
而且,我不知道这是可能的,但我想在的情况下最paranthesis,他们是嵌套的,例如
"{{abc}"
- >"{abc"
一般来说,正则表达式返回捕获组将返回导致匹配/捕获的整个字符串作为var中包含捕获数据的第一个/第0个参数。相反,请检查'groups [1]'。 –
尽管正则表达式在这里不是问题,但是在括号内没有转义的右括号,捕获括号内的东西的标准方法是'“\ {[^}] \}”'。 – fabianegli
[Match.Groups](https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.match.groups(v = vs.110).aspx):“如果正则表达式引擎可以找到匹配项,Group属性返回的GroupCollection对象(索引为0的元素)的第一个元素包含一个匹配整个正则表达式模式的字符串“... –