javascript - 如何使用 .replace() 替换包含按位运算符的字符串部分

标签 javascript str-replace

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

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

最佳答案

只需转义起始符号。

/\^/g
 ^

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

关于javascript - 如何使用 .replace() 替换包含按位运算符的字符串部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54119241/

相关文章:

javascript - Mongoose 子文档与嵌套模式

javascript - 阅读更多显示全部内容的弹出窗口 - HTML

php - PHP str_replace 是否有超过 13 个字符的限制?

php - 从字符串中删除所有反斜杠 - php - regex

php - str_replace 内容不替换

javascript - 从父子 JSON 数据中获取所有子项

javascript - 检测对象数组中是否存在属性值

javascript - 类似 treeview 的 jquery 插件

php - 字符串替换连续三个字符

php - 正则表达式 str_replace