如何在JavaScript中从字符串中去除正斜杠和反斜杠

3

我希望使用Javascript从字符串中删除所有的正反斜杠字符。

以下是我尝试过的方法:

var str = "//hcandna\\"
str.replace(/\\/g,'');

我也尝试使用str.replace(/\\///g,''),但是我无法做到。
我该如何做呢?
4个回答

16
你可以将\/ 或者 (|) \\ 替换为移除所有出现的:

var str = "//hcandna\\"
console.log( str.replace(/\\|\//g,'') );

关于在您的正则表达式中转义字符的小提示:

斜杠\放在保留字符前面,是为了将其从其功能中逃脱,并将其表示为一个字符。这就是为什么您的方法\\//没有意义。您用\转义\,所以它变成了\\。但是如果您想要转义/,也需要像这样做:\/


3
你想要更接近这种样式的东西:

var str = "//hcandna\\"
str=str.replace(/[\/\\]/g,'');
console.log(str);

这将搜索包含正斜杠或反斜杠的字符集并在全局范围内替换它们。你之前所写的需要一个反斜杠后跟一个正斜杠。
以下是Node的输出:
  str.replace(/[\/\\]/g,'')
  'hcandna'

0

您可以使用此代码片段

str.replace(/(\\|\/)/g,'');

0

你需要将结果添加到一个新字符串中,例如:

var newstr = str.replace(/(\\|\/)+/ig, '');

既不需要 + 也不需要 i。在替换斜杠时,大小写敏感不起作用。由于有 g 限定符,因此不需要 + - David Hoelzer
那取决于斜杠的大小..并且它适用于所有尺寸..是的,好吧,我知道,我触发了一个带扣和皮带的级联打字错误效应,有时会发生 ;) - Jan Andersen
斜杠的大小取决于什么?这是什么意思? - David Hoelzer
这只是一个玩笑,但显然不是一个很好的玩笑,对此我感到抱歉。 :) - Jan Andersen
没关系。 :) 我以为可能是,但我也觉得可能是我不知道的东西。 :) - David Hoelzer
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接