----------------------------------------
 * Function:C#操作Url参数
 * Author:Robot.H
 * Created:20081117
 ---------------------------------------*/
using System;
using System.Text.RegularExpressions;
using System.Runtime.Remoting.Contexts;
class app
{
    
static void Main()
    {
        
//生成random
        Random rand = new Random(Environment.TickCount);
        
int num = rand.Next(110000);

        
/*
       * 
http://news.sina.com.cn
       * 
http://news.sina.com.cn?page=1
       * 
http://news.sina.com.cn?page=1&ts=1341                            &&
       * 
http://news.sina.com.cn?ts=14321&page=1                        ?&
       * 
http://news.sina.com.cn?u=2&ts=14321&page=1                        &&
       
*/
        
string url = "http://news.sina.com.cn?u=2&ts=14321&page=1";
        
string ParamText = "ts";
        
string ParamValue = num.ToString();
        Console.WriteLine(BuildUrl( url,  ParamText,  ParamValue));
        Console.Read();
  
    }
    
//url里有key的值,就替换为value,没有的话就追加C#操作Url参数.
    public static string BuildUrl(string url, string ParamText, string ParamValue)
    {
        Regex reg 
= new Regex(string.Format("{0}=[^&]*",ParamText),RegexOptions.IgnoreCase);
        Regex reg1 
= new Regex("[&]{2,}", RegexOptions.IgnoreCase);
        
string _url = reg.Replace(url, "");
        
//_url = reg1.Replace(_url, "");
        if (_url.IndexOf("?"== -1)
            _url 
+= string.Format("?{0}={1}",ParamText,ParamValue);//?
        else
            _url 
+= string.Format("&{0}={1}", ParamText, ParamValue);//&
        _url = reg1.Replace(_url, "&");
        _url 
= _url.Replace("?&""?");
        
return _url;
    }

相关文章:

  • 2021-05-25
  • 2021-06-10
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-22
相关资源
相似解决方案