2013-03-13 76 views
2

我試圖用Javascript中的空格替換字符串中的多個脫字符(^)。繼更換W3Schools的條目(),我用這個代碼:替換Javascript中的脫字符號

var str = "Salt^Lake^City, UT"; 
var result = str.replace(/^/g, " "); 

然而,result值是 「鹽^ ^湖城,UT」。

var result = str.replace("^", " "); 

但我想,以取代所有插入符任意數量的:當我運行這段代碼的一種插入符號代替。是否有什麼明顯的我失蹤全球替換在Javascript中?我可以使用str.replace("^", " ");編寫一個函數來刪除所有的插入符,但我寧願使用內置的全局替換。

+0

不要諮詢w3schools。關於該網頁的一些信息是錯誤的(請參閱http://w3fools.com) – 2013-03-13 17:55:40

回答

6

^字符匹配正則表達式中字符串的開頭,所以您需要將其轉義,以便將其視爲文字字符。這就是爲什麼在你的例子中,結果字符串在字符串開頭添加了一個新的空間。

var result = str.replace(/\^/g, " "); 
0

您還可以使用另一種方便的方式,這是一個迂迴。

var result = str.split('^').join(' ') ;