有没有办法逃避单引号?
以下内容:
str := "I'm Bob, and I'm 25."
str = strings.Replace(str, "'", "\'", -1)
给出错误:未知转义序列:'
我想成为
"I\'m Bob, and I\'m 25."
答案 0 :(得分:22)
你还需要在strings.Replace中删除斜杠。
str := "I'm Bob, and I'm 25."
str = strings.Replace(str, "'", "\\'", -1)
答案 1 :(得分:10)
+到@KeylorSanchez回答:你可以在后面的方法中包换替换字符串:
strings.Replace(str, "'", `\'`, -1)
答案 2 :(得分:-1)
// 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