我想写这个如何逃避格式字符串花括号拉斯特
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