處理fmt.Sprintf 中的額外欄位
問題:
使用fmt.Sprintf 格式化fmt.串時,額外的欄位可能會導致恐慌錯誤。例如,嘗試使用“hello %s”等字串模板格式化“Hello Friends”等完整字串會導致“Hello Friends%!(EXTRA string=world)”等錯誤。我們如何忽略 fmt.Sprintf 中的額外欄位?
解決方案:
雖然沒有直接的方法來忽略 fmt.Sprintf 中的額外字段,但一種方法是強制執行特定動詞要求。在這種情況下,我們可以要求使用者始終在命令列參數中提供 %s 動詞。要處理沒有實際格式的情況,使用者可以將字串截斷為零長度:
<code class="go">Hello Friends%.0s</code>
或甚至更短:
<code class="go">Hello Friends%.s</code>
這將產生純輸出:
Hello Friends
遵守此約定,您可以避免由於sprintf 格式字串中意外的額外欄位而導致的錯誤。
以上是如何處理 fmt.Sprintf 中的額外欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!