How to count the letters, spaces, numbers and other characters of a string in Rust

1 Answer

0 votes
fn count_characters(s: &str) {
    let only_letters_regex = regex::Regex::new(r"^[a-zA-Z]$").unwrap();
    let mut letter = 0;
    let mut spaces = 0;
    let mut numbers = 0;
    let mut otherchars = 0;

    for c in s.chars() {
        if only_letters_regex.is_match(&c.to_string()) {
            letter += 1;
        } else if c.is_digit(10) {
            numbers += 1;
        } else if c == ' ' {
            spaces += 1;
        } else {
            otherchars += 1;
        }
    }

    println!("letter: {}", letter);
    println!("space: {}", spaces);
    println!("number: {}", numbers);
    println!("other: {}", otherchars);
}

fn main() {
    let s = "Rust $100%     Prog()ramming   99 !!!";
    count_characters(s);
}


  
/*
run:

letter: 15
space: 10
number: 5
other: 7
  
*/

 



answered Aug 28, 2024 by avibootz
...