我想写这个
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)
但这也不起作用-(
您可能正在阅读一些过时的文档(例如Rust 0.9)
从Rust 1.0开始,逃离{
和}
的方法是使用另一个{
或}
write!(f, "{{ hash:{}, subject: {} }}", self.hash, self.subject)
文字字符CCD_ 5和CCD_在它们前面有相同的字符。例如,
{
字符用CCD_ 8转义并且用}}
转义CCD_。