@asdasdqwe

Двойной слеш вместо одного?

Данный код не работает, что не так? Спасибо
let str = 'D:\number\folder';

let reg = /\\/;
let escaped = str.replace(reg, "\\\\")

console.log(escaped);   
// D:
// umberolder
  • Вопрос задан
  • 149 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
let str = 'D:\number\folder';

в этой строке уже нет слешей. Тут есть "\n" (новая строка) и "\f" ещё какой-то спецсивол. Просто выведите str без изменений, чтобы убедиться.

По-хорошему, в исходной строке слеши уже должны быть экранированы ("escaped")
let str = 'D:\\number\\folder';

Откуда берёте эту строку? Дело в браузере или в NodeJS? Если в Node – можно использовать модуль Path – он умеет работать с путями и использовать правильный разделитель, в зависимости от платформы Windows / ???
let str = path.join('D:', 'number', 'folder');
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы