日期:2014-05-17 浏览次数:20583 次
string[] strs = css.Split('|'); foreach (string str in strs) { if (str.Trim() == "") continue; Regex reg = new Regex(@"^(?<key>\w+)\{(?<val>.*?)\}$", RegexOptions.IgnoreCase); Match m = reg.Match(str.Trim().ToLower()); //if (m.Success) //{ string key = m.Groups["key"].Value; string val = (m.Groups["val"].Value.Trim()); ... ... ....
string tempStr = @"关键字{值}"; string pattern = @"^(?<key>\w+)\{(?<val>.*?)\}$"; foreach (Match m in Regex.Matches(tempStr, pattern)) { //循环输出 string key = m.Groups["key"].Value;//关键字 string val = m.Groups["val"].Value;//值 }
------解决方案--------------------
^表示匹配一个表达式的开始,$表示结束。。<key>在正则表达式中五特殊意义,也就是说这个在要匹配的字符串中必须有这个。\w表示[A-Za-z0-9_]即大写的A到大写的Z和小写的a-z还有0-9或者下划线(_)中的任意一个字符。但是这个段表达式被放在(?)内部,也就是说这个是可有可无的。\{\}表示该字符必须要有内部同前面的一样!
------解决方案--------------------