我的輸入是 var email =「xyz + wex + rr%40gmail.com」;使用正則表達式替換Javascript中的字符串
我需要輸出
XYZ WEX RR @ gmail.com
我試圖與這下面的正則表達式,我只能從我的字符串中刪除+如何與替換%4015
email .replace(/ +/g,「」);
我的輸入是 var email =「xyz + wex + rr%40gmail.com」;使用正則表達式替換Javascript中的字符串
我需要輸出
XYZ WEX RR @ gmail.com
我試圖與這下面的正則表達式,我只能從我的字符串中刪除+如何與替換%4015
email .replace(/ +/g,「」);
這裏需要溶液,
email.replace(/\+/g, " ").replace(/\%40/g, "@")
var email = "xyz+wex+rr%40gmail.com";
console.log(email.replace(/\+/g, " ").replace(/\%40/g, "@"))
結果:xyz wex [email protected]
請運行上述片斷
可以使用UNESCAPE功能來第一UNESCAPE串並比
更換+
試試這個
var email = unescape("xyz+wex+rr%40gmail.com").replace(/[+]/g, " ");
console.log(email)
正如@Florian阿爾布雷希特說,unescape
已被棄用,從而已棄用Florian的回答較好
unescape已棄用:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/unescape –
thanks for分享 –
var email = "xyz+wex+rr%40gmail.com";
email = decodeURIComponent(email).replace(/\+/g, " ");
console.log(email);
decodeURIComponent解碼之類的東西40%。它只是不會用空格替換+
標誌,所以這是通過RegEx完成的,轉義加號在RegEx中具有特殊含義。
你必須轉義像'+'這樣的正則表達式中具有特殊含義的字符。試試'/ \ +/g' – Rajesh
只需用「\%40」作爲替換的搜索字符串運行另一個替換。 – DocWeird
看看這個https://stackoverflow.com/a/20247435/2329980 –