How to check whether a string is a palindrome, ignoring spaces and case in Rust

1 Answer

0 votes
use regex::Regex;

fn is_palindrome(s: &str) -> bool {
    // Normalize the string: remove spaces and convert to lowercase
    let re = Regex::new(r"\s+").unwrap();
    let normalized_str = re.replace_all(s, "").to_lowercase();

    // Reverse the normalized string and compare
    let reversed_str: String = normalized_str.chars().rev().collect();

    normalized_str == reversed_str
}

fn main() {
    println!("Is palindrome: {}", is_palindrome("A man a plan a canal Panama"));
    println!("Is palindrome: {}", is_palindrome("abcDefg"));
}


 
/*
run:
 
Is palindrome: true
Is palindrome: false
 
*/

 



answered May 16, 2025 by avibootz
...