Прежде всего, str.replace("a","b")
заменяет только первое вхождение в JavaScript. Чтобы заменить их все, вам нужно использовать регулярное выражение с модификатором g
. Итак, вы можете сначала попробовать str.replace(/\n\t/g,"xxx")
.
Далее, почему это работает в VSCode? В регулярном выражении VSCode \n
соответствует любой последовательности разрыва строки, выбранной в нижнем правом углу приложения VSCode. В этом случае он работает как \R
в PCRE, Java, Onigmo и т. Д.
Поскольку может быть много последовательностей окончания строки, вы можете рассмотреть возможность "преобразования" VSCode \n
в (?:\r\n|[\r\n\x0B\x0C\x85\u2028\u2029])
, который соответствует любой отдельной последовательности разрыва строки Unicode, и использовать
s = s.replace(/(?:\r\n|[\r\n\x0B\x0C\x85\u2028\u2029])\t/g, '')