javascript - 在 javascript 中用 \\n 切换 \n
问题描述
所以我有一个字符串:
var s = "foo\nbar\nbob";
我希望字符串变为:
"foo\\nbar\\nbob"
我怎样才能\n
用 a替换每个\\n
?
我试过使用一些 for 循环,但我无法弄清楚。
解决方案
一个简单的.replace
工作 - 搜索\n
并替换为\\n
:
var s = "foo\nbar\nbob";
console.log(
s.replace(/\n/g, '\\\n')
// ^^ double backslash needed to indicate single literal backslash
);
请注意,这会导致“一个反斜杠字符,后跟一个文字换行符” - 在实际字符串中不会连续出现两个反斜杠。使用它可能会更容易混淆String.raw
,它将逐字解释模板文字中的每个字符:
var s = "foo\nbar\nbob";
console.log(
s.replace(/\n/g, String.raw`\
`) // template literal contains one backslash, followed by one newline
);
推荐阅读
- vb.net - 如何在 VB.net 中更改旋转原点
- javascript - 如何在python中的两个websockets之间共享数据?
- ios - 给初学者的建议,让他们制作一个带有每天变化的标签的应用程序。Xcode
- node.js - 如何解决 HTTP 标头错误,而使用邮递员在 API 测试中显示状态 200 ok?
- amazon-sqs - 使用带有消息组 ID 的 FIFO AWS SQS 连接多个生产者和多个消费者
- javascript - 如何将 blob(AJAX 响应)保存到我的服务器而不是用户计算机中的命名文件(JSON 类型)中
- python - 如何更改 seaborn 线图中的 xaxis 标签
- context-free-grammar - 语言到上下文无关语法
- php - 如何提高 PHP 中 for 循环的速度?
- django - json.loads() 上的 Django Rest Framework 和 Angular Dev vs Prod 字符串和字节问题