简单的代码,在节点 v.9.30 中,我无法替换所有出现的"\"来获取字符串"n_fdsan__xsa"。我应该使用不同的方法吗?
s = 'nfdsan\xsa';
r = s.replace(/\\/g, "_");
console.log(r);
编辑:多亏了@Quentin和@Phillip,我意识到"\f"是不同的字符 - 表单提要,第二个实际上是反斜杠 - "\"。
s = 'nfdsan\xsa';
r = s.replace(/\/g, "_");
console.log(r);
// Displays:
n
dsan_xsa
问题似乎是存储的字符串是nfdsan\xsa
,这相当于实例化 js 变量时的n\fdsan\\xsa
。记录变量后,您会看到预期的nfdsan\xsa
。
为了替换斜杠字符的所有实例,您将使用以下方法:
s = "n\fdsan\\xsa";
console.log(s); // Displays 'nfdsan\xsa'
s = s.replace(/\/g, "_");
console.log(s); // Displays 'n_fdsan__xsa'