JavaScript用字符替换字符串|

时间:2010-01-20 05:39:04

标签: javascript

当我尝试以下操作时,它不起作用:str.replace("| stuff", "")

但是如果我删除PIPE呢? str.replace("stuff", "")

为什么JS函数不允许PIPE | ?如何进行包含管道的替换?

4 个答案:

答案 0 :(得分:5)

因为.replace接受RegEx,|是RegEx中的特殊字符。你需要逃脱它。

例如,使用str.replace(/\|/g, "")删除每个|个字符。

答案 1 :(得分:3)

不,它应该有效,除非您使用/| stuff/RegExp("| stuff")代替"| stuff"

"xyz| stuff".replace("| stuff", ""); //returns xyz

答案 2 :(得分:1)

不是吗

"xyz| stuff".replace("\| stuff", ""); //returns xyz

答案 3 :(得分:1)

str.replace("| stuff", "")应该有效,但只会替换第一次出现。如果您想要替换所有这些,请尝试使用像str.replace(/\|\sstuff/g, "")

这样的正则表达式