我现在在弄生成静态页的问题,生成之后,页面里面的链接还是.aspx的,比如:a.aspx?m=10&n=8,那么如果我想替换掉它,替换成a_m10_n8,这个正则该怎么写?或者是别的方法?还有我具体该怎么替换,比如说先如何找到匹配的(求方法),并如何去替换掉
------解决方案--------------------------------------------------------
那你用的应该是.NET FRAMEWORK 2.0吧,
Try:
- C# code
void Main(){ string yourhtml="<a href=\"a.aspx?m=10&n=8\">例子</a>"; yourhtml=Regex.Replace(yourhtml,@"(?i)(?<=<a\shref=(['""]?))(\w+)\.aspx(\?[^?'""]+)?(?=\1)", delegate(Match m){return string.Format("{0}",m.Groups[2].Value+m.Groups[3].Value.Replace("&","_").Replace("?","_").Replace("=",""));}); Console.WriteLine(yourhtml);}