猿问

Golang:转义单引号

有没有办法在go中转义单引号?


下列:


str := "I'm Bob, and I'm 25."

str = strings.Replace(str, "'", "\'", -1)

给出错误:未知转义序列:'


我希望 str 成为


"I\'m Bob, and I\'m 25."


料青山看我应如是
浏览 432回答 3
3回答

绝地无双

您还需要转义strings.Replace 中的斜线。str := "I'm Bob, and I'm 25."str = strings.ReplaceAll(str, "'", "\\'")https://play.golang.org/p/BPtU2r8dXrs

largeQ

您可以将替换字符串包装在反引号中:strings.ReplaceAll(str, "'", `\'`)

一只萌萌小番薯

// addslashes()func Addslashes(str string) string {    var buf bytes.Buffer    for _, char := range str {        switch char {        case '\'':            buf.WriteRune('\\')        }        buf.WriteRune(char)    }    return buf.String()}如果要转义单/双引号或反冲,可以参考https://github.com/syyongx/php2go
随时随地看视频慕课网APP

相关分类

Go
我要回答