How to validate a 10-digit standard 10 digit phone number using RegEx in Rust

1 Answer

0 votes
use regex::Regex;

fn main() {
    let phone_numbers = [
        "333-555-1234",
        "(333)-555-1234",
        "333 555 1234",
        "333.555.1234",
        "+91 (333) 555-1234",
    ];

    let pattern = r"^(\+\d{1,2}\s?)?((\(\d{3}\)|\d{3})[\s.-]?\d{3}[\s.-]?\d{4})$";
    let re = Regex::new(pattern).unwrap();

    for &phone_number in &phone_numbers {
        if re.is_match(phone_number) {
            println!("Valid phone number format: {}", phone_number);
        } else {
            println!("Invalid phone number format: {}", phone_number);
        }
    }
}


     
/*
run:
  
Valid phone number format: 333-555-1234
Valid phone number format: (333)-555-1234
Valid phone number format: 333 555 1234
Valid phone number format: 333.555.1234
Valid phone number format: +91 (333) 555-1234
    
*/

 



answered Feb 22, 2025 by avibootz
...