Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Замена символа косой черты (https://javascript.ru/forum/misc/83585-zamena-simvola-kosojj-cherty.html)

lysenkora 17.01.2022 14:40

Замена символа косой черты
 
Добрый день!

Пытаюсь заменить символ косой черты во всей строке:

var str = '\\C:\Папка\my\root\ts';
var replaced = str.replace(/\\/g, '_');
alert(replaced);


Но почему-то раньше выполняется перенос сроки (символ \r), нежели замена. Прошу помочь с решением!

ksa 17.01.2022 15:01

lysenkora, ;)
const str = '\\\\C:\\Папка\\my\\root\\ts';
alert(str);
const replaced = str.replace(/\\/g, '_');
alert(replaced);

Aetae 17.01.2022 15:03

Потому что когда ты задаёшь строку руками - ты должен сразу экранировать спецсиволы.
Когда ты пишешь так
var str = '\\C:\Папка\my\root\ts';
в переменную str в памяти попадает
\C:Папкаmy<RF>oot<TAB>s

Соответственно ты не можешь заменить то, чего нет. Если строка в память попадёт сразу в нужном виде(из инпута, с серава, из файла) - тогда замена сработает.


Часовой пояс GMT +3, время: 22:08.