【问题标题】:javascript replace \ characterjavascript替换\字符
【发布时间】:2013-09-30 14:24:45
【问题描述】:

我有一个包含以下值的纯 javascript var:

    var a = "\\{0\\}";

现在我需要做的是替换第一个和后一个括号之前的两个 \。

我尝试了不同的解决方案,但似乎没有一个可以工作

   var b = a.replace(pattern,'')

我找不到好的模式。我不知道该做什么或如何编写一个好的模式或正则表达式。

有人知道解决方案吗?谢谢大家

附:我需要纯javascript中的解决方案。

【问题讨论】:

标签: javascript replace special-characters


【解决方案1】:
var a = "\\{0\\}";
var pattern = /\\/g;
var b = a.replace(pattern,'');

您的问题是您正在处理转义字符,因此您需要使用正则表达式。


编辑:工作示例

http://jsfiddle.net/tylerpachal/HgBnw/

【讨论】:

  • 谢谢 TylerAndFriend,但我已经尝试过您的建议,但它不起作用。我找到了解决方案,我不知道为什么,但模式需要 \ 3 次 var a = "\\{0\\}"; var b = a.replace(/\\\/g, ''); console.log(b) 将打印 {0}
  • @user2548436 上面的答案,模式为/\\/g,对我有用。在 Chrome 控制台中,语句 "\\{0\\}".replace(/\\/g, '') 产生 "{0}"。使用/\\\/g 的模式会得到SyntaxError
【解决方案2】:

试试这个

var a = "\\{0\\}";
var b = a.replace('\\','').replace('\\','');
alert(b);

【讨论】:

    猜你喜欢
    • 2011-10-29
    • 2014-07-29
    • 2015-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多