Ваш код даже не должен компилироваться.
"\"
экранирует "
, поэтому строка продолжается.Запись String h = "\"hello\"";
делает строку h
содержащей "hello"
.
Если мы изменим его и изменим на "\\"
(без обратной косой черты), мы столкнемся с другой проблемой.Затем регулярное выражение пытается экранировать символ следующий .Например, запись "\\d+"
является допустимым регулярным выражением (совпадающими цифрами).
В вашем случае, однако, вам вообще не нужны регулярные выражения.Просто используйте метод replace(char, char)
для строки, он заменяет все символов.
myString.replace('\\', '/');
Кстати, если вы заменяете пути, вы должны посмотреть на File.separator
чтобы получить системы символ-разделитель пути .