【问题标题】:How to use .replace() to replace parts of a string containing a bitwise operator如何使用 .replace() 替换包含按位运算符的字符串部分
【发布时间】:2019-01-09 22:19:50
【问题描述】:

我知道您可以使用 str.replace(/something/g, "something else") 替换所有出现的特定字符串。但如果该字符串包含按位运算符,则代码不再有效。它将 ^ 解释为 xor 运算符,那么您如何解决这个问题?你如何指定查找 string ^,而不是 operator ^?

var str = "3^3^3";
var newStr = str.replace(/^/g, "**"); //returns "**3^3^3"
console.log(eval(newStr)); //returns error

想要的结果:

var str = "3^3^3";
var newStr = something... // "3**3**3"
console.log(eval(newStr)); // 762597484987

【问题讨论】:

    标签: javascript str-replace


    【解决方案1】:

    只需转义起始符号。

    /\^/g
     ^
    

    var str = "3^3^3";
    var newStr = str.replace(/\^/g, "**"); //returns "**3^3^3"
    console.log(eval(newStr));

    【讨论】:

      猜你喜欢
      • 2022-01-22
      • 2011-06-28
      • 1970-01-01
      • 1970-01-01
      • 2013-11-16
      • 1970-01-01
      相关资源
      最近更新 更多