我想寫這個如何逃避格式字符串花括號拉斯特
write!(f, "{ hash:{}, subject: {} }", self.hash, self.subject)
但由於大括號具有特殊含義的格式很顯然,我不能把外部大括號一樣,沒有逃跑。所以我試圖逃避他們。
write!(f, "\{ hash:{}, subject: {} \}", self.hash, self.subject)
Rust並不喜歡那樣。然後我讀到:
字符字符{,}或#可能包含在字符串中,前面加上\字符。由於\已經是Rust字符串中的轉義字符,因此使用此轉義符的字符串文字看起來像「\ {」。
所以,我想
write!(f, "\\{ hash:{}, subject: {} \\}", self.hash, self.subject)
但是,這也不能正常工作。 :-(
你是什麼意思'不工作'?它是運行時錯誤(即您不期望的輸出)還是編譯時錯誤? – huon 2014-08-29 14:04:40
這是編譯時錯誤。但是,這是通過nos解決的。 – Christoph 2014-08-29 14:20:58
哦,將來請包含編譯器輸出,最好是版本。這對於Rust來說尤其重要,因爲編譯器可以發生巨大的變化;在這裏就是這種情況,主人(我猜是你正在閱讀的文檔)上的行爲不同於0.11。 – huon 2014-08-29 23:55:52