我一直在阅读format!
和所有formatting options,并看到有一种美妙的方式可以使用<
,^
或>
或{:^32} // Centers it nicely in 32 characters of whitespace
。而不是将字符串置于空格中心,是否可以将其置于角色中心?
{:^32'c'} // But this does not work
我在想这样的事情:
rightCalloutAccessoryView
我几乎尝试过各种方式,除了那些看起来太疯狂的方式。但幸运的是有 Stack Overflow !
是否可以使用数字将字符串居中以实现以下内容?
-------- SO很棒--------
答案 0 :(得分:5)
是否可以使用数字将字符串居中以实现以下内容?
是的,有点,只要你真正的意思是“类似的东西......”
fn main() {
let s = format!("{:-^30}", "SO is AWESOME");
assert_eq!(s, "--------SO is AWESOME---------");
// ^-- 8 here ^-- 9 here
}
参考formatting syntax,以下是相关部分:
format_spec := [[fill]align][sign]['#']['0'][width]['.' precision][type]
fill := character
align := '<' | '^' | '>'
width := count
我们指定 fill (-
),对齐(^
/ center)和 width (30
)。但是,这个字符串是13个单位宽,所以要填充到30个单位,填充必须在一侧更大。