string - 格式化 Go 字符串而不打印?

标签 string go formatting string-formatting

有没有一种简单的方法可以在不打印字符串的情况下在 Go 中格式化字符串?

我能做到:

bar := "bar"
fmt.Printf("foo: %s", bar)

但我希望返回格式化的字符串而不是打印出来,以便进一步操作它。

我也可以这样做:

s := "foo: " + bar

但是当格式字符串很复杂时,这变得难以阅读,当一个或多个部分不是字符串并且必须首先转换时,这变得很麻烦,例如

i := 25
s := "foo: " + strconv.Itoa(i)

有没有更简单的方法来做到这一点?

最佳答案

Sprintf就是你要找的。

示例

fmt.Sprintf("foo: %s", bar)

您还可以在 Errors example 中看到它的使用情况。作为“围棋之旅”的一部分。

return fmt.Sprintf("at %v, %s", e.When, e.What)

关于string - 格式化 Go 字符串而不打印?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11123865/

相关文章:

java - 字符串文字的自动驻留

javascript - 为什么在 Nodejs 中比较两个字符串时 '===' 比逐字符比较慢

arrays - 将字符串数组转换为 Int 数组 Swift 2?

c - 是否可以编写 C 函数来修改 Go 代码中定义的类型的结构?

JavaFX:如何在某种文本区域中存储和格式化多个段落?

excel - 从excel vba中心表到word doc

c# - 如何将一串要点(带有标题和正文内容)拆分成一个多维数组?

go - 我如何将 json 字符串硬编码到 *http.Response 中以便在 Go 中进行测试

arrays - 从golang中的mongodb检索非结构化数组

javascript - Chart.js 数字格式