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
*/