我正在尝试用下面的代码将正斜杠替换为反向,但是结果与预期的不同,在这种情况下,replace
的第二个参数是什么?
var path = 'C:\Users\abc\AppData\Local\Programs\Python\Python37\python.exe';
path.replace(/\\/g, "/");
console.log(path)
结果:
“ C:UsersabcAppDataLocalProgramsPythonPython37python.exe”
答案 0 :(得分:6)
您的正则表达式很好,但变量声明需要双反斜杠,因为单个反斜杠被解释为转义符:
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`;
答案 1 :(得分:-4)
path.replace(/ \ 134 / g,“ /”);
作为正则表达式。 \ 134是反斜杠的八进制表示