JavaScript заменить все / с \ в строке? - PullRequest
2 голосов
/ 04 октября 2010

У меня есть файл javascript, который запускается через задание Windows с использованием cscript.Тем не менее, я не могу исправить эту вещь, чтобы работать правильно.Внутри файла он в основном берет URL и преобразует его в путь UNC.

ex: http://mysite.com/document1.htm в \ myserver \ document1.htm

Однако я не могуКажется, я получил / s, чтобы перейти к и я в недоумении, почему.

Я пробовал 2 вещи в основном

1) str = str.replace(/\/g, "\\");
2) str = str.replace("/", "\\");

Есть идеи, почему это не сработает?

Спасибо, Дейв

Ответы [ 2 ]

8 голосов
/ 04 октября 2010

Это так:

str = str.replace(/\//g, "\\");

/ на конце - это нормальный /pattern/ формат, вам нужно дополнительное для вашего \ побега, вы можете проверить егоздесь .

1 голос
/ 07 августа 2013

Вы можете использовать следующий трюк:

str = str.split("/").join("\\");

В более общем смысле:

function replaceAll(str, a, b) {
    return str.split(a).join(b);
}

Это позволяет избежать кошмаров регулярных выражений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...