How to replace consecutive characters with only one in Rust

1 Answer

0 votes
fn remove_consecutive_duplicates(input: &str) -> String {
    let mut result = String::new();
    let mut prev_char: Option<char> = None;

    for c in input.chars() {
        if Some(c) != prev_char {
            result.push(c);
        }
        prev_char = Some(c);
    }

    result
}

fn main() {
    let input = "aaaabbbccdddddd";
    let modified = remove_consecutive_duplicates(input);

    println!("Original: {}", input);
    println!("Modified: {}", modified);
}

   
    
/*
run:
    
Original: aaaabbbccdddddd
Modified: abcd
    
*/

 



answered Jun 7 by avibootz
...