将行结尾转换为“\n”文字

我有一个有趣的问题要解决。由于我必须与之交谈的工具,我需要将换行符转换为文字字符串\n我有以下数据


{"name": 2019-05-25,

"tracker": {

"project": {

  "uri": "/project/87",

  "name": "Allen's Test"

},

"uri": "/tracker/57483",

"name": "Tasks"

        },

"description": "[{Table


||Stack

||Current Version

||New Version

||Changes

|common

|1.0.214

|1.0.214

|* blah - [#345|https://blah.com/345]


|workflow

|2.2.23

|2.2.23

|* [ES-12345] blah - [#1087|https://blah.com/1087]


}]",

"descFormat": "Wiki"}

所以基本上不是多行字符串,我需要将它转换为带有 \n 的单行字符串,后端的工具将在其中转换它。我正在使用 go 但不太确定从哪里开始。我假设我需要原始字符串,但许多源位是内置换行符的 api 调用。


任何帮助,将不胜感激。


墨色风雨
浏览 137回答 2
2回答

梵蒂冈之花

例如,package mainimport (    "fmt"    "strings")func main() {    s := `"project": {  "uri": "/project/87",  "name": "Allen's Test"},`    fmt.Println(s)    s = strings.ReplaceAll(s, "\n", `\n`)    fmt.Println(s)}游乐场:https://play.golang.org/p/lKZw78yOuMc输出:"project": {  "uri": "/project/87",  "name": "Allen's Test"},"project": {\n  "uri": "/project/87",\n  "name": "Allen's Test"\n},对于 Go 1.12 之前,写:s = strings.Replace(s, "\n", `\n`, -1)

FFIVE

我有一种感觉,这是一个XY问题......但要简单地用 2-char string 替换换行符字节 '\n' \n,请使用:strings.ReplaceAll(data, "\n", "\\n")游乐场:https://play.golang.org/p/Xmg4pgqFy5O输出:{"name": 2019-05-25,\n"tracker": {\n"project": {\n  "uri": "/project/87",\n ....注意:这不处理其他格式字符,例如\t制表符 ( ) 回车符 ( \r) 等。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go