function RegularUrl(url,key,value)
{
var fragPos = url.lastIndexOf("#");
var fragment="";
if(fragPos > -1)
{
fragment = url.substring(fragPos);
url = url.substring(0,fragPos);
}
var querystart = url.indexOf("?");
if(querystart < 0 )
{
url +="?"+key+"="+value;
}
else if (querystart==url.length-1)
{
url +=key+"="+value;
}
else
{
var Re = new RegExp(key+"=[^\\s&#]*","gi");
if (Re.test(url))
url=url.replace(Re,key+"="+value);
else
url += "&"+key+"="+value;
}
return url+fragment;
}
{
var fragPos = url.lastIndexOf("#");
var fragment="";
if(fragPos > -1)
{
fragment = url.substring(fragPos);
url = url.substring(0,fragPos);
}
var querystart = url.indexOf("?");
if(querystart < 0 )
{
url +="?"+key+"="+value;
}
else if (querystart==url.length-1)
{
url +=key+"="+value;
}
else
{
var Re = new RegExp(key+"=[^\\s&#]*","gi");
if (Re.test(url))
url=url.replace(Re,key+"="+value);
else
url += "&"+key+"="+value;
}
return url+fragment;
}
用法,用于在客户端重新构造URL
例如:http://www.cnblogs.com/page.aspx?id=6&c=7&d=8
如果要替换掉C=7为c=9
这里的方法好处是其通用性强