首页 > 开发 > 综合 > 正文

C#操作Url参数 url里有key的值,就替换为value,没有的话就追加

2024-07-21 02:30:23
字体:
来源:转载
供稿:网友
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(1, 10000);        /*        * 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,没有的话就追加.    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;     }
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表