如何在Rust 0.9中反转字符串?
根据rosettacode.org,这工作在0.8:
let reversed:~str = "一二三四五六七八九十".rev_iter().collect();
...但我无法让迭代器在0.9中处理字符串。
还尝试了std::str::StrSlice::bytes_rev
,但我还没有找到一种干净的方法将结果转换回字符串而不会让编译器窒息。
答案 0 :(得分:2)
首先迭代字节和反转将打破多字节字符(你想要迭代字符)
let s = ~"abc";
let s2: ~str = s.chars_rev().collect();
println!("{:?}", s2);