读书人

怎么用正则匹配quot;嵌套quot;类型的,得出想要

发布时间: 2012-05-10 16:02:39 作者: rapoo

如何用正则匹配"嵌套"类型的,得出想要的结果?
代码:

HTML code
{第一层{第二层}}

用正则后想取得两个数据.
1,
C# code
第一层{第二层}

2,
C# code
第二层

如何写?

[解决办法]
C# code
        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);            }        }/*第一层{第二层{第三层{第四层{第五层{第六层}}}}}第二层{第三层{第四层{第五层{第六层}}}}第三层{第四层{第五层{第六层}}}第四层{第五层{第六层}}第五层{第六层}第六层*/ 

读书人网 >asp.net

热点推荐