Golang では、fmt.Sprintf は文字列のフォーマットに使用される一般的な関数です。柔軟性を提供しますが、予期しない動作が発生する可能性のあるシナリオがあります。
そのようなシナリオの 1 つは、プログラムがプレースホルダーなしの完全な文字列を fmt.Sprintf に渡す場合です。次の例を考えてみましょう。
<code class="go">import "fmt" func main() { tmp_str := "hello %s" str := fmt.Sprintf(tmp_str, "world") fmt.Println(str) }</code>
プログラムがテンプレートの代わりに「Hello Friends」のような完全な文字列を受け取ると、パニックが発生し、エラー メッセージが出力されます。
この問題を軽減するには、いくつかの方法があります。考慮:
Hello Friends%.0s
これにより、プレーンな出力が生成されます:
Hello Friends
以上がGolang の fmt.Sprintf で予期しない文字列テンプレートを処理する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。