日期:2014-05-17 浏览次数:20516 次
{ 第一层 { 第二层 } }
第一层 { 第二层 }
第二层
static Regex reg = new Regex(@"(?<=\{)[^{}]+((?:(?<Open>\{)(?:[^{}]+))*(?:(?<-Open>\})[^{}]*)*)*(?=\})"); static void Main(string[] args) { string str = @"{ 第一层 { 第二层 { 第三层 { 第四层 { 第五层 { 第六层 } } } } } } "; GetValue(str); Console.ReadKey(); } public static void GetValue(string str) { Match m = reg.Match(str); if (m.Success) { Console.WriteLine(m.Value); GetValue(m.Value); } } /* 第一层 { 第二层 { 第三层 { 第四层 { 第五层 { 第六层 } } } } } 第二层 { 第三层 { 第四层 { 第五层 { 第六层 } } } } 第三层 { 第四层 { 第五层 { 第六层 } } } 第四层 { 第五层 { 第六层 } } 第五层 { 第六层 } 第六层 */