2013-03-13 73 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(' ') ;