例如:
var str="abc\'defgh\'123";
我想删除所有\
使用 Javascript。我已经尝试了几个功能,但仍然无法替换所有正斜杠。
我在 JS 和多个替换功能上发布了大量的废话。但在您的情况下,以下任何一种方式都可以很好地发挥作用:
str = str.replace('\\',' ');//Only replaces first occurrence
str = str.replace(/\\/g,' ');
str = str.split('\\').join(' ');
正如@Guillaume Poussel 指出的那样,第一种方法只替换了一次反斜杠。不要使用那个,要么使用正则表达式,要么(如果你的字符串很长)使用这种split().join()
方法。
只需像这样使用替换功能:
str = str.replace('\\', ' ');
小心,你需要\
和另一个一起逃跑\
。该函数返回修改后的字符串,它不会修改调用它的字符串,因此您需要像我的示例中那样捕获返回值!所以只是做:
str.replace('\\', ' ');
然后使用str
, 将使用原始字符串,而无需替换。
尝试:
string.replace(搜索值,新值)
在你的情况下:
str.replace('\\', ' ');
str="abc\\'asdf\\asdf"
str=str.replace(/\\/g,' ')
您想在您的情况下全部 '\'
替换,但是,如果您直接使用 '\',则函数 replace 只会替换一次。您必须将模式编写为正则表达式。
使用 string.replace:
var result = str.replace('\\', ' ');
结果:
"abc 'defgh '123"