Avatar ·

如何在Go中编写多行字符串?

大家好!我刚开始学习Go,在处理长字符串时遇到了问题。我需要将一个SQL查询保存到变量中,但它占用了多行。在Python中,我习惯使用三重引号,但在Go中这种语法不起作用。\n\n以下是我尝试做的:\n\n```go\nquery := "SELECT id, name, email \nFROM users \nWHERE active = true \nORDER BY name"\n```\n\n编译器报错:`syntax error: unexpected newline in string literal`。我尝试过使用`+`进行字符串拼接,但看起来很笨重:\n\n```go\nquery := "SELECT id, name, email " +\n "FROM users " +\n "WHERE active = true " +\n "ORDER BY name"\n```\n\n我还听说过使用反引号的“raw strings”,但不确定它们如何工作。Go中是否有更优雅的方式来编写多行字符串?如何正确处理长文本,特别是当需要保留格式时,例如对于JSON或SQL查询?感谢您的示例!