3

我正在尝试用 Javascript 中的空格替换字符串中的多个插入符号 (^)。在替换()上的 w3schools 条目之后,我使用了以下代码:

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

但是,值为result“Salt^Lake^City, UT”。当我运行此代码时,一个插入符号被替换:

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

但我想替换所有任意数量的插入符号。关于在 Javascript 中进行全局替换,我有什么明显的遗漏吗?我可以编写一个函数str.replace("^", " ");来删除所有插入符号,但我宁愿使用内置的全局替换。

4

2 回答 2

8

^字符与正则表达式中字符串的开头匹配,因此您需要对其进行转义,以便将其视为文字字符。这就是为什么在您的示例中,结果字符串在字符串的开头添加了一个新空格。

var result = str.replace(/\^/g, " ");
于 2013-03-13T17:53:37.507 回答
1

您还可以使用另一种方便的方式,即回旋处。

var result = str.split('^').join(' ') ;
于 2013-03-13T18:12:20.193 回答