示例:初始化(P90W)刹车(45X)结果:990W45X注意没有括号的结果。我一直试图使这项工作无济于事我尝试了一些变体,但我知道这是我所缺少的简单东西,我不想使用替换来实现它。varitem="Brake(45X)"RegexsearchTerm=newRegex(@"((.*))");varvalue=(searchTerm.Match(item).Groups.Count>0)?searchTerm.Match(item).Groups[0].Value:string.Empty;有些人指责我一直使用零宽度断言:resultString=Regex.Match(subjectString,@"(?但他们做的正是你想要的。不要抓住你不想要的。试试regex@"((.*?))"编辑:结果将是第1组而不是第0组,第0组应包含整个正则表达式结果,而不是第一个带括号的值删除内部括号并重试一次:newRegex(@"(([^)]+))");当你没有在正则表达式中转义括号时,如果你使用组匹配,它只会返回括号中的内容。所以,如果你有newRegex(@'(a)(b))',匹配1将是a,匹配2将是b。匹配0是整个匹配。RegexsearchTerm=newRegex(@"(([^)]*))");试试看:以上就是C#学习教程:C#正则表达式匹配括号里的任何内容会用到,需要多了解C#学习教程,希望大家多多关注---varpattern=@".*public.*(.*(.*))";Regex.Matches(input,pattern)本文来自网络收藏,不代表立场,如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
