如何以惯用方式转义仅需要根据JSON规范进行转义的字符串中的字符。
(我不是在尝试编组/解组对象或字符串,我只想转义字符串内的字符。)
这个方法可以工作,但肯定有更惯用的方法吧?https://play.golang.org/p/rcHZbrjFyyH
func main() {
fmt.Println(jsonEscape(`dog "fish" cat`))
//output: dog \"fish\" cat
}
func jsonEscape(i string) string {
b, err := json.Marshal(i)
if err != nil {
panic(err)
}
// Trim the beginning and trailing " character
return string(b[1:len(b)-1])
}
string(b[1:len(b)-1])
。这将减少两个字节分配的内存。否则,编组是将字符串(或任何其他值)编码形式的方法。 - Charlie Tumahai