Java,检查String是否是回文.不区分大小写

use*_*604 4 java string compare

我想编写一个java方法,如果字符串是回文,则返回true.

这是我到目前为止:

String palindrome = "...";
boolean isPalindrome = palindrome.equals(
   new StringBuilder(palindrome).reverse().toString());
Run Code Online (Sandbox Code Playgroud)

我的问题在于它不会像以下这样的词:Race car成为回文.

Doc, note, I dissent. A fast never prevents a fatness. I diet on cod.
Run Code Online (Sandbox Code Playgroud)

测试这是否是回文的最佳方法是什么,不区分大小写并忽略标点符号.

Fr_*_*ien 7

使用此正则表达式删除所有标点符号和空格并将其转换为小写

String palindrome = "..." // from elsewhere
boolean isPalindrome = palindrome.replaceAll("[^A-Za-z]", "").toLowerCase().equals(new StringBuilder(palindrome.replaceAll("[^A-Za-z]", "").toLowerCase()).reverse().toString());
Run Code Online (Sandbox Code Playgroud)