单双qoute反引号转义特殊字符丰富字符串

我需要为Go中的变量分配一个笨拙的特殊字符丰富字符串。该字符串包含单引号,双引号以及反引号。

示例:

licKey := `sQO*=+=ZG7#UXz!I:C&?snUfg`j.*C!29x,HP|@=wJ;],{N;?rmc}b4~$ma,>p._9(&Xj4PQ3RhzF6#B;}cf0jFx`=qZYl|IB9/_d85P?PeD>,te9~sfPlCenm$X;VZ/aWR-WEZ//oP&yO^SsGEI:5CyeZsWK{uREUI6tD@TC&?8fHQ^a0wLhmxBkPBZ]U/&8?T$VUAGx#:.XSu%azB{/H,ejiGss.T)D5U]O6JmEIEdEC+q5-C*e&T~]Q&YaYl0<B;tSx0i'_c+ZC2'W]c&b0Aud&b_fnv_<#3x2C4USSXkOL&}MNC=z-6#`Oy)D!fc+=bQ,vZF`

我已经将字符串本身包装在反引号(`)中,但是如您所见,整个字符串本身都有反斜线。

想到的一种方法是将字符串外部化为文本文件,然后从那里读取并将变量分配给内容:

raw,err := ioutil.ReadFile(<filePath>)
if err != nil {
    return
}
licKey := string(raw)

我只是想检查标准库中是否还有其他方法可以帮助任何人知道?也许逃脱了?

sundan308 回答:单双qoute反引号转义特殊字符丰富字符串

您可以将字符串放在双引号中,并使用反斜杠转义字符串中的所有双引号或反斜杠。

    licKey := "sQO*=+=ZG7#UXz!I:C&?sNUfg\`j.*C!29x,HP|@=wJ;],{N;?rmc}b4~$ma,>p._9(&Xj4PQ3RhzF6#B;}cf0jFx`=qZYl|IB9/_d85P?PeD>,te9~sfPlCeNM$X;VZ/aWR-WEZ//oP&yO^SsGEI:5CyeZsWK{uREUI6tD@TC&?8fHQ^a0wLhmxBkPBZ]U/&8?T$VUAGx#:.XSu%azB{/H,ejiGss.T)D5U]O6JmEIEdEC+q5-C*e&T~]Q&YaYl0<B;tSx0i'_c+ZC2'W]c&b0Aud&b_fnv_<#3x2C4USSXkOL&}MNC=z-6#`Oy)D!fc+=bQ,vZF"

如果要转换控制字符和不可打印的字符,请查看strconv.Quote

本文链接:https://www.f2er.com/3113704.html

大家都在问