如何在javascript中用空格替换所有\中的\?

时间:2012-09-17 09:38:12

标签: javascript string

例如:

 var str="abc\'defgh\'123";

我想使用Javascript删除所有\。我尝试了几个函数,但仍然无法替换所有正斜杠。

5 个答案:

答案 0 :(得分:3)

我在JS和multiple replace功能上发布了 huuuge 加载的bollocks。但在您的情况下,以下任何一种方式都可以很好地完成:

str = str.replace('\\',' ');//Only replaces first occurrence 
str = str.replace(/\\/g,' ');
str = str.split('\\').join(' ');

正如@Guillaume Poussel指出的那样,第一种方法只替换了一次反斜杠。不要使用那个,要么使用正则表达式,要么(如果你的字符串很长)使用split().join()方法。

答案 1 :(得分:1)

只需使用这样的替换功能:

str = str.replace('\\', ' ');

小心,您需要与另一个\一起逃离\。该函数返回修改后的字符串,它不会修改调用它的字符串,因此您需要像我的示例中一样捕获返回值!所以只是这样做:

str.replace('\\', ' ');

然后使用str,将使用原始字符串,而不使用替换。

答案 2 :(得分:1)

尝试:

  

与string.replace(searchvalue,NEWVALUE)

在你的情况下:

str.replace('\\', ' ');

答案 3 :(得分:1)

str="abc\\'asdf\\asdf"
str=str.replace(/\\/g,' ')

您希望在您的情况下替换所有 '\',但是,如果您直接使用'\',则替换函数只会替换一次。您必须将模式编写为正则表达式。

请参阅http://www.w3schools.com/jsref/jsref_replace.asp

答案 4 :(得分:0)

使用string.replace:

var result = str.replace('\\', ' ');

结果:

"abc 'defgh '123"