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

关于截取字符串中各个蛮量值
这两天为了实现一个功能,发贴不少,也得到了各位网友的解答,非常感谢!
这个功能实现还有一个问题,也是关于截取字符的问题,与前面的相比较简单些。问题如下:
  string aa="[Fsx.List:TabelName=admin,IsPage=true,ShowPageNum=true,PageNumAlign=center,Top=8,PageSize=10,WhereStr=(字段名#操作符#值#逻辑运算符),OrderFieldNum=0,Order=0]
  <tr><td>{$manager}</td><td>{$num}</td></tr>
[/Fsx.List]
内容..
[Fsx.List:TabelName=admin,IsPage=true]ffdgdfg[/Fsx.List]"


怎么截取[Fsx.List:中的所有变量值赋值给一个字符串数组,WhereStr的值去除()赋值给一个字符串变量,条件也是[Fsx.List:中变量个数不确定。谢谢!

------解决方案--------------------
C# code

string str="[Fsx.List:TabelName=admin,IsPage=true,ShowPageNum=true,PageNumAlign=center,Top=8,PageSize=10,WhereStr=(字段名#操作符#值#逻辑运算符),OrderFieldNum=0,Order=0]
  <tr><td>{$manager}</td><td>{$num}</td></tr>
[/Fsx.List]
内容..
[Fsx.List:TabelName=admin,IsPage=true]ffdgdfg[/Fsx.List]";
string pattern=@"(?i)(\w+)=\(?([\w#\u4e00-\u9fa5]+)\)?";
Dictionary<string,string> dic=new Dictionary<string,string>();
foreach(Match m in Regex.Matches(str, pattern))
{
  dic.Add(m.Groups[1].Value,m.Groups[2].Value);//dic格式就是这种(key=TabelName,Value=admin)
}