用单个值替换所有 Sprintf 变量
使用 fmt.Sprintf() 格式化字符串时,通常涉及用特定值替换变量价值观。但是,如果您需要用相同的值替换所有变量怎么办?
fmt.Sprintf() 确实可以通过使用显式参数索引来适应这种情况。这些索引指定应使用哪个参数进行格式化,而不是默认的顺序行为。
例如,用“foo”替换格式化字符串中的所有变量:
val := "foo" s := fmt.Sprintf("%[1]v in %[1]v is %[1]v", val)
在此例如,在每个格式动词之前使用显式参数索引 [1],表示所有变量都应替换为第一个参数,即“foo”。生成的字符串变为:
"foo in foo is foo"
以下是语法细分:
您可以通过省略第一个变量的显式参数索引来进一步简化它,因为它默认为 1:
fmt.Sprintf("%v in %[1]v is %[1]v", "foo")
这种方法提供了一种方便的方法,可以用单个值统一替换格式化字符串中的所有变量。
以上是如何将 fmt.Sprintf() 中的所有变量替换为单个值?的详细内容。更多信息请关注PHP中文网其他相关文章!