string url = @"<a disabled=""disabled"" style=""margin-right:5px;"">首页</a><a disabled=""disabled"" style=""margin-right:5px;"">上一页</a><span class=""cpb"" style=""margin-right:5px;"">1</span><a href=""WriteAndUpByftp.aspx?page=2"" class=""paginator"" style=""margin-right:5px;"">2</a><a href=""WriteAndUpByftp.aspx?page=3"" class=""paginator"" style=""margin-right:5px;"">3</a><a class=""paginator"" href=""WriteAndUpByftp.aspx?page=2"" style=""margin-right:5px;"">下一页</a><a class=""paginator"" href=""WriteAndUpByftp.aspx?page=3"" style=""margin-right:5px;"">尾页</a>
";
        string pattern = @"";//正则我应怎样写?
        Regex rgx = new Regex(pattern);
        string a = rgx.Replace(url,"");//这里怎么写?
        Response.Write(a);我需要将所有WriteAndUpByftp.aspx?page=1 WriteAndUpByftp.aspx?page=2……等WriteAndUpByftp.aspx?page开头的替换成如aabb1.htm aabb2.htm……这样的语名,再比如:
WriteAndUpByftp.aspx?page=1 ——aabb1.htm
WriteAndUpByftp.aspx?page=2——aabb2.htm
WriteAndUpByftp.aspx?page=3——aabb3.htm

解决方案 »

  1.   

    string pattern = "WriteAndUpByftp.aspx\\?page=(\\d+)";
    string a = Regex.Replace(url,pattern,"aabb$1.htm");
      

  2.   


    string oldUrl = HttpContext.Current.Request.RawUrl;
    string pattern = @"^(.+)News(d+).html(?.*)*$";
      string replace = "$1NewsDetails.aspx?NID=$2";
    if (Regex.IsMatch(oldUrl, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled))
      {
        string newUrl = Regex.Replace(oldUrl, pattern, replace,
          RegexOptions.Compiled | RegexOptions.IgnoreCase);
        this.Context.RewritePath(newUrl);
      }