我想用 javascript 构建一个回文检查器。应删除所有非字母字符,以便像“A man, a plan, a canal. Panama”这样的短语也可以是回文。
function reverse(str) {
return str.split("").reverse().join("");
}
function palindrome(str) {
str = str.replace(/[^a-zA-Z]+/,"").toLowerCase();
if(str == reverse(str)) {
return true;
}
else {
return false;
}
}
现在,上面几行中的错误在哪里?
该代码适用于一些示例。但是例如“一个人,一个计划,一条运河。巴拿马”和“从不奇数或偶数”返回错误,这意味着某处必须是一个错误。
最佳答案
您需要提供 global match flag到你的正则表达式:
/[^a-zA-Z]+/g
^
关于javascript - JavaScript 中的回文检查器 - 不知道如何调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32395229/