ASP.NET 正则替换URL参数值

public class HomeController : Controller
    {
        public ActionResult Index()
        {
            var url = "http://www.ly.com?ak=abcdefg&user=sbd";
            var queryString = "ak=hello&user=test&passpord=111";

            url = this.DealQueryString(url, queryString);

            return Content(url);
        }

        private string DealQueryString(string url, string queryString)
        {
            var arr = queryString.Split(‘&‘);
            foreach (var item in arr)
            {
                var arrSub = item.Split(‘=‘);
                url = this.DealQueryString(url, arrSub[0], arrSub[1]);
            }
            return url;
        }

        private string DealQueryString(string url, string key, string val)
        {
            var exp = key + "=([^&]*)";
            var r = new Regex(exp);
            if (r.IsMatch(url))
            {
                url = r.Replace(url, key + "=" + val);
            }
            else
            {
                url += url.Contains("?") ? "&" : "?";
                url += key + "=" + val;
            }
            //url = Regex.Replace(url, exp, para + "=" + val);

            return url;
        }
    }
时间: 2024-10-24 03:07:08

ASP.NET 正则替换URL参数值的相关文章

jquery替换URL参数值

由于经常会用到替换URL参数值,而网上写的方法代码都太长了,所以在这里写了一个简单的方法,供大家使用. 说明: reLoad(参数名,参数值) function reLoad(p, v) { var url = window.location.href; var par = p + "=" + v; if (getUrlParam(p) == null) location.href = url + (url.indexOf("?") > 0 ? "&

正则替换URL地址为链接地址

最近项目中有用到判断URL文本转化为链接地址的正则,刚好记录下 /*替换链接*/ replaceSrc:function(txt){ var reg = /(((https?:(?:\/\/)?)(?:[-;:&=\+\$,\w][email protected])?[A-Za-z0-9.-]+|(?:www.|[-;:&=\+\$,\w][email protected])[A-Za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\

asp 正则替换函数

Function RegExpTest(patrn,str1,strng) Dim regEx',str1 ' 建立变量 'str1 = "The quick brown fox jumped over the lazy dog."Set regEx = New RegExp ' 建立正则表达式 regEx.Pattern = patrn ' 设置模式 regEx.IgnoreCase = True ' 设置是否区分大小写 'RegExpTest = regEx.test(strng)

asp.net正则模板引擎代码

我们申明一个数组 public static Regex[] r = new Regex[23]; 接下来关键的正则表达式: RegexOptions options = RegexOptions.None; //嵌套模板标签(兼容) r[0] = new Regex(@"<!--{template ((skin=\\""([^\[\]\{\}\s]+)\\""(?:\s+))?)src=(?:\/|\\"")([^\[\]\{\

批量替换url,指定内容不替换

如果需要批量替换url的某几部分,当然是用正则了比如在CI框架中要把 <img src="pc/baidu/aa.jpg"> 替换成 <img src="<?php echo base_url('pc/baidu/aa.jpg');?>"> 对应的正则式是这样写的: 1 src="(.*?)" //正则匹配这样写 2 src="<?php echo base_url\('$1'\);?>&

用正则把url解析为对象

用正则把url解析为对象 <!DOCTYPE html><html><head><meta charset="utf-8"><title>string and reg</title></head><body><script>/*一.知识点1. \ 将下一个字符标记为或特殊字符.或原义字符.或向后引用.或八进制转义符.例如, 'n' 匹配字符 'n'.'\n' 匹配换行符.序列 '

【ASP.NET】同一URL根据不同设备跳到不同页面

我们都知道,现在的新大型网站,如果输入www开头的网址,网站会自动判别设备,并跳转到合适的页面,来自于PC和移动端最终访问的真实url会不同.解决方案如下: 在网站的默认页面Defau.aspx的Default.aspx.cs文件的Page_Load方法中加入如下代码: string u = Request.ServerVariables["HTTP_USER_AGENT"]; Regex b = new Regex(@"android.+mobile|avantgo|bad

js获取url参数值的两种方式

js获取url参数值的方法有很多,下面也为大家介绍两种,喜欢的朋友可以测试下,希望对大家有所帮助 方法一:正则分析法 代码如下: function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if

ASP.NET取得Request URL的各个部分

ASP.NET取得Request URL的各个部分  网址:http://localhost:1897/News/Press/Content.aspx/123?id=1#toc Request.ApplicationPath / Request.PhysicalPath D:\Projects\Solution\web\News\Press\Content.aspx System.IO.Path.GetDirectoryName(Request.PhysicalPath) D:\Projects