How to check if a string contains only letters, numbers, underscores and dashes in Rust

1 Answer

0 votes
use regex::Regex;

fn is_valid_string(s: &str) -> bool {
    let pattern = Regex::new(r"^[A-Za-z0-9_-]*$").unwrap();
    
    pattern.is_match(s)
}

fn main() {
    let s1 = "-abc_123-";
    println!("{}", if is_valid_string(s1) { "yes" } else { "no" });

    let s2 = "-abc_123-(!)";
    println!("{}", if is_valid_string(s2) { "yes" } else { "no" });
}

   
    
/*
run:
    
yes
no
    
*/

 



answered May 31, 2025 by avibootz
...