【问题标题】:Replace function `\` error in the javascript替换javascript中的函数`\`错误
【发布时间】:2021-01-22 04:38:23
【问题描述】:

我有一个字符串符号错误的问题,我想替换这个符号\,但它不起作用。我的示例代码 javascript 如下编码:

我正在做这个测试,无法提醒消息

var file_name = "C:\fakepath\claim 20210121 1754.sql";
var bbb = file_name.replace("C:\fakepath", "123");
alert(bbb);

如果javascript代码下面没有\,可以替换,提示信息为123\fakepath\claim 20210121 1754.sql

var file_name = "C:\fakepath\claim 20210121 1754.sql";
var bbb = file_name.replace("C:", "123");
alert(bbb);

其实我想要的告警信息结果是123\claim 20210121 1754.sql

【问题讨论】:

  • 试试file_name.replace("C:\\fakepath", "123"); 加上两个反斜杠
  • Windows 允许您使用正斜杠作为目录分隔符。这会让事情变得更容易。

标签: javascript str-replace


【解决方案1】:

反斜杠开始转义序列,您需要将它们加倍以使其成为文字。

var file_name = "C:\\fakepath\\claim 20210121 1754.sql";
var bbb = file_name.replace("C:\\fakepath", "123");
alert(bbb);

【讨论】:

    【解决方案2】:

    通过加倍 (\\) 来转义转义字符 (\):

    const file_name = "C:\fakepath\claim 20210121 1754.sql"
    const bbb = file_name.replace("C:\fakepath", "123\\")
    const p = document.querySelector('pre')
    p.innerText += bbb
    <pre></pre>

    输出:

    123\claim 20210121 1754.sql
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-02
      • 2012-12-10
      • 1970-01-01
      • 2020-11-08
      • 2016-03-19
      • 2018-06-18
      • 1970-01-01
      相关资源
      最近更新 更多