使用正則表達式,我想編寫一個函數,它將採用URL和參數名稱:ReplaceParamValueinURL (url, param, value)
。Javascript Reg表達式替換URL中的Get參數
如果參數存在,它將替換URL中的值。 如果該參數不存在,則會將其與值一起添加到URL中。 如果該參數不存在任何值,則會將該值添加到參數中。
是否有一個在正則表達式中找到和替換所有三個方法的優雅方法?
ReplaceParamValueinURL ("http://google.com?a=1&b=2&c=3, a , 4)
returns http://google.com?a=4&b=2&c=3
ReplaceParamValueinURL ("http://google.com?a=1&b=2&c=3, a , 4)
returns http://google.com?a=4&b=2&c=3
ReplaceParamValueinURL ("http://google.com?a=1&b=2&c=3, c , 4)
returns http://google.com?a=1&b=2&c=4
ReplaceParamValueinURL ("http://google.com?a=1&b=2&c=3, d , 5)
returns http://google.com?a=1&b=2&c=3&d=5
ReplaceParamValueinURL ("http://google.com?aaa=0&a=1&b=2&c=3, a , 6)
returns http://google.com?aaa=0&a=6&b=2&c=3
ReplaceParamValueinURL ("http://google.com?a=1&b&c=3, b , 2)
returns http://google.com?a=1&b=2&c=3
I am hoping to do this with Reg ex instead of split. I really appreciate it if you can explain your answer if the regex is too complex. Is there a Jquery function that already does this?
我想這是一個很常見的情況,但可以有很多的情況。
ReplaceParamValueinURL ("http://google.com?a=1&b&c=3#test, a , 2)
returns http://google.com?a=2&b&c=3#test
由於提前, 羅斯
您好,我才意識到這個解決方案不符合我的真實URL的http工作://本地主機: 8080/signup.htmlfirst_name = Ross&username = Ross.ya%2B1%40gmail.com&business_id = 2&pin = 190854&pId = 258243806&last_name = Ya&debug = true#/ signupnew –
爲什麼?怎麼了? – mck89