diff --git a/src/prehandle.rs b/src/prehandle.rs index 3e11076..70c3a88 100644 --- a/src/prehandle.rs +++ b/src/prehandle.rs @@ -17,12 +17,8 @@ fn filter_by_string(reader: Vec, filter_str: &str) ->Vec{ } let mut result: Vec = Vec::new(); result.push(reader[0].clone()); - for line in reader[1..].iter(){ - if line.contains(filter_str){ - result.push(line.to_string()); - } - } - return result; + result.extend(reader.into_iter().skip(1).filter(|line| line.contains(filter_str))); + result } fn take(reader: &mut Vec, start_index: u32, end_index: u32) -> Vec {