将文字反斜杠后跟一个字符转换为相应的转义序列

时间:2018-09-16 05:21:53

标签: javascript escaping

我有一个传入字符串,其中包含文字反斜杠,后跟n "\\n"。如何解释这是换行符"\n"?对于"\\t""\t"同样。我想将文字反斜杠后跟一个字符解释为相应的转义序列。

输入:"foo\\nbar\\tbaz"。所需的输出:"foo\nbar\tbaz"

2 个答案:

答案 0 :(得分:0)

如果您不想写出每个替换项,那么一个丑陋的可能性就是使用eval\解释为后跟转义字符的字符串:

const input = String.raw`foo\nbar\tbaz`;
console.log(input.replace(/\\(.)/g, (_, char) => eval('"\\' + char + '"')));

答案 1 :(得分:0)

另一个选择-利用JSON模块:

for-each