Как заменить обратные слеши на двойные обратные

435
26 ноября 2016, 17:59

Есть у меня переменная, в нее попадает вот такая запись

E:\my\svpo\Settings\

Как мне в ней заменить обратные одинарные слеши на двойные? Должно получится вот так

E:\\my\\svpo\\Settings\\

Пробовал использовать ReplaceSubstring но ничего у меня не получается, нуб я полный в JS. Подскажите решение.

Собственно весь код.

var FSO, WshShell, cur_dir, new_folder, new_file, list, index;
// Создаем объект WScript.Shell
WshShell = WScript.CreateObject("WScript.Shell");
cur_dir = WshShell.CurrentDirectory;
FSO = new ActiveXObject("Scripting.FileSystemObject"); 
var new_file = FSO.OpenTextFile(""+cur_dir+"\\cur_dir.txt", 2, true); 
new_file.WriteLine(""+cur_dir+"\\");


WScript.Echo (cur_dir);
Answer 1

Обратные слэши используются для экранирования символов и для обозначения классов символов, и должны быть экранированы сами собой и в строках, и в регулярных выражениях:

var str = 'E:\\my\\svpo\\Settings\\'; 
console.log(str); 
 
str = str.replace(/\\/g, '\\\\'); 
console.log(str);

Двойной обратный слэш при записи \\ в действительности является просто обратным слэшем \, а четверной \\\\ - двойным \\.

READ ALSO
javascript закрепить выделение текста

javascript закрепить выделение текста

Здравствуйте, как можно закрепить выделение текста на странице?

283
Проверка на существование div js

Проверка на существование div js

Как проверить правильно на существование дива?

392