這裏是我的代碼:如何替換URL參數的值?
var str = 'http://localhost/myweb/login/resend_password?destination=http://localhost%2Fmyweb%2Fsearch%3Fs%3Dislamic_sources%26q%3D%25D8%25B3%25D9%2584%25D8%25A7%25D9%2585';
var res = str.replace('/(destination=)[^$|&]+/', '$1newval');
console.log(res);
雖然這是預期的結果:
http://localhost/myweb/login/resend_password?destination=newval
爲什麼更換並不在我的代碼工作?注意到它的工作原理是this fiddle。
刪除*文字符號*的引號。 – revo
是的,這是一個錯字。你試圖替換一個字符串,而不是正則表達式。 'var res = str.replace('/(destination =)[^ $ |&] + /','$ 1newval');'應該是'var res = str.replace(/(destination =)[^ $ | &] + /,'$ 1newval');' –
Downvoters,請留下評論並解釋我的問題出了什麼問題?在提問之前,我已經嘗試了很多,並且在我的問題中添加了一個小提琴,這非常清楚。那麼,怎麼了? –