当前位置: 代码迷 >> ASP.NET >> 依据原始URL匹配得到要重写的URL地址
  详细解决方案

依据原始URL匹配得到要重写的URL地址

热度:2168   发布时间:2013-02-25 00:00:00.0
根据原始URL匹配得到要重写的URL地址
XML code
<UrlRewrite>    <Rule Look="word-([0-9]+).aspx" Send="default.aspx?classid=0&amp;id=$1" />    <Rule Look="word-([0-9]+)-([0-9]+).aspx" Send="default.aspx?classid=0|$1&amp;id=$2" /></UrlRewrite>


如上XML配置文件,一般重写URL地址的情况如下:

访问 word-10.aspx 被重写的URL地址是 default.aspx?classid=0&id=10
访问 word-10-15.aspx 被重写的URL地址是 default.aspx?classid=0|10&id=15

但是现在我要反过来,写一个方法实现

根据 default.aspx?classid=0&id=10 地址,得到 word-10.aspx
根据 default.aspx?classid=0|10&id=15 地址,得到 word-10-15.aspx


请问这个如何用简单的方法实现,求救了。



------解决方案--------------------------------------------------------
C# code
            string content = "default.aspx?classid=0&id=10";            System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(@"(?<=&id=)[\d]+");            System.Text.RegularExpressions.Match m = reg.Match(content);            MessageBox.Show("word-"+m.Value+".aspx");
------解决方案--------------------------------------------------------
把Look的([0-9]+)和Send的$对调,Send的&amp;改为&,再Replace
  相关解决方案