日期:2014-05-17  浏览次数:20519 次

问个简单的正则表达式
求个匹配 {z:GetArticle(xx,2,xx5)} 这个的 正则表达式 其中红色的是调用的函数。。看了下匹配规则弄了半天都不对。。。见笑。。


------解决方案--------------------
\{z:GetArticle\(\w+\,\w+\,\w+\)\}
------解决方案--------------------
\{z[::](?<value>[\w ]+\(.*?\))\}

.Group("value").Value
------解决方案--------------------
1.首先搞明白一个问题你那z后面是个全角的":"号还是个半角的":"号,你那是全角的":",你匹配失败是不是这个原因。
2.我当是半角的":"来匹配:
 string dd = "{z:GetArticle(xx,2,xx5)}{z:GetArticle(xx,2,xx5)}";
//匹配多个
string resultStr= Regex.Replace(dd, @"\{z(:.*?)\}", "$1", RegexOptions.IgnoreCase | RegexOptions.Multiline);
string[] resultArr= resultStr.Substring(1).Split(':');