2011-09-22 87 views
1

我需要basicaly乾淨的網址有它的特殊字符,像這樣:正則表達式刪除所有特殊字符的URL

http://172.23.113.79/recherche/pages/Results.aspx?k=**cr%c3%83%c2%a9er*** 

我想通過**créer**

更換**cr%c3%83%c2%a9er***和更普遍的所有字符如À Á Â à á â È É Ê è é ê Ì Í Î ì í î Ò Ó Ô ò ó ô Ù Ú Û ù ú û

回答

0

,使之更加普遍

if (jQuery.browser.msie) { 
       retStr = encodeURI(retStr); 
      } 
4
var u=decodeURI("http://172.23.113.79/recherche/pages/Results.aspx?k=cr%c3%83%c2%a9er*"); 
// u is "http://172.23.113.79/recherche/pages/Results.aspx?k=créer*" 

var u=decodeURI("http://172.23.113.79/recherche/pages/Results.aspx?k=cr%C3%A9er*"); 
// u is "http://172.23.113.79/recherche/pages/Results.aspx?k=créer*" 

var u=decodeURI("http://172.23.113.79/recherche/pages/Results.aspx?k=%C3%A9%C3%A8%C3%A0%C3%A7%C3%B9%C3%A2%C3%AA%C3%AE*"); 
// u is "http://172.23.113.79/recherche/pages/Results.aspx?k=éèàçùâêî*" 

瞭解更多:

MDN decodeURI:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/decodeURI

MDN decodeURIComponent:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/decodeURIComponent

var u=decodeURI("http://172.23.113.79/recherche/pages/Results.aspx?k=%C3%80%C3%81%C3%82%C3%A0%C3%A1%C3%A2%C3%88%C3%89%C3%8A%C3%A8%C3%A9%C3%AA%C3%8C%C3%8D%C3%8E%C3%AC%C3%AD%C3%AE%C3%92%C3%93%C3%94%C3%B2%C3%B3%C3%B4%C3%99%C3%9A%C3%9B%C3%B9%C3%BA%C3%BB*"); 
// u is "http://172.23.113.79/recherche/pages/Results.aspx?k=ÀÁÂàáâÈÉÊèéêÌÍÎìíîÒÓÔòóôÙÚÛùúû*" 
+0

我們可以不僅爲créer案件,但更廣泛地像字符éèA C U A E I – user472285

+0

是。查看更新的答案。並閱讀MDN。這必須適用於所有unicode字符。 –

+0

嗯,我不是js專家:(也許我的問題不清楚...我想要做的是如果一些字符被發現在網址然後清理網址我認爲正則表達式將是答案,但我' m不確定!!! – user472285

0

如果它不是很通用的,你有你想要的特殊字符和短語替換,你可以映射你的特殊字符/短語到他們的替換,然後解碼字符串並替換它們中的每一個:

var replacements = { 
    "créer" : "créer", // this is a phrase 
    "Ã" : "é", 
    "Â" : "e", 
    "©" : "" 
}; 
var url = "http://172.23.113.79/recherche/pages/Results.aspx?k=**cr%c3%83%c2%a9er***"; 
var decoded = unescape(url); // or decodeURI(url); 
for(var key in replacements) 
    decoded = decoded.replace(key,replacements[key]); 
+0

好吧,忘記我想要清理的字符是èèàçùâêî – user472285

+0

你可以用你需要的任何東西來更新'replacements' –