如何用转义字符创建字符串?

问题描述:

我想创建字符串\"str\"但我想给变量名称为str。 对于前: x := "name" q := fmt.Sprintf("\"%s\"", x) 我想要Q = "\"name\""如何用转义字符创建字符串?

我试图this

+1

是否'Q:= fmt.Sprintf( “\\\” %s \ “的\\”,x)的'工作? – jodag

+5

或使用原始字符串文字:''('''%s \“'''' – JimB

使用逃脱\之前序列在\\"格式化字符串\\显示字面特殊字符"

package main 

import (
    "fmt" 
) 

func main() { 
    x := "hello" 
    q := fmt.Sprintf("\\\"%s\"\\", x) 
    fmt.Println(q) 
} 
+0

是的,谢谢您的快速回复。 –

更具功能性,灵活性的解决方案,取决于您的口味:

x := "hello" 
p := []byte{'"', '\\', '"', '"'} 
q := append(append(p, []byte(x)...), p...) 
fmt.Printf("%s", q) 

https://play.golang.org/p/MHOsdefZYW

+1

这可能是最难以解读的解决方案。 – Adrian