How to implement trim for Vec<u8>?
问题 Rust provides a trim method for strings: str.trim() removing leading and trailing whitespace. I want to have a method that does the same for bytestrings. It should take a Vec<u8> and remove leading and trailing whitespace (space, 0x20 and htab, 0x09). Writing a trim_left() is easy, you can just use an iterator with skip_while() : Rust Playground fn main() { let a: &[u8] = b" fo o "; let b: Vec<u8> = a.iter().map(|x| x.clone()).skip_while(|x| x == &0x20 || x == &0x09).collect(); println!("{:?}