javascript - 如何在js中用正斜杠替换反斜杠

标签 javascript regex

<分区>

我正在尝试用下面的代码将正斜杠替换为反斜杠,但结果不如预期,在这种情况下,replace 的预期第二个参数是什么?

var path = 'C:\Users\abc\AppData\Local\Programs\Python\Python37\python.exe';
path.replace(/\\/g, "/");
console.log(path)

结果:

"C:UsersabcAppDataLocalProgramsPythonPython37python.exe"

最佳答案

您的正则表达式很好,但变量声明需要双反斜杠,因为单反斜杠被解释为转义字符:

var path = 'C:\\Users\\abc\\AppData\\Local\\Programs\\Python\\Python37\\python.exe';
path = path.replace(/\\/g, "/");

console.log(path);
//=> C:/Users/abc/AppData/Local/Programs/Python/Python37/python.exe


如果你想避免在赋值中使用\\那么你可以使用String.raw

var path = String.raw`C:\Users\abc\AppData\Local\Programs\Python\Python37\python.exe`;

关于javascript - 如何在js中用正斜杠替换反斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56809549/

相关文章:

javascript - 如何标记以编程方式生成的要素图层?

javascript - 保护密码客户端 Firebase

regex - 如何使用 Perl 正则表达式找到重复的字母?

Javascript 正则表达式定界符(正斜杠的任何替代方法)?

php - 正则表达式字符串替换大写和小写

javascript - 如何使用从javascript(无界面)开始的ESC/POS打印机进行打印

javascript - Rails 3 - 在 View 上包含 JavaScript?

php - 如何嵌入谷歌iframe?

Javascript RegExp 的解释与字符串与数据属性不同

c++ - 正则表达式匹配空格,但不在 "strings"