Go の fmt パッケージの Printf 関数は、値をフォーマットして出力する強力な方法を提供します。ただし、特定の変数の書式設定をエスケープする必要がある場合があります。
次の例では、最初に出現した %v をエスケープし、2 番目の変数はそのままにしておく必要があるとします。
fmt.Printf("Escape this -> %v... Do not escape this -> %v", "Unescaped")
%v を使用して %v をエスケープしようとしても機能しません。目的の出力を実現するには、%% エスケープ シーケンスを利用できます。
%% エスケープ シーケンスは、書式指定子として解釈されないリテラルのパーセント記号を表します。したがって、上記の例で最初に出現した %v をエスケープするには、次のようにコードを変更できます。
fmt.Printf("Escape this -> %%v... Do not escape this -> %v", "Unescaped")
これにより、次の出力が得られます。
Escape this -> %v... Do not escape this -> Unescaped
%% を使用すると、%v がフォーマットされるのを効果的に防止し、リテラルのパーセント記号として保持できます。この手法により、Go での文字列の書式設定と出力をより詳細に制御できるようになります。
以上がGoでPrintf変数をエスケープする方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。