JavaScript中的回文检查器 - 不知道如何调试

k_r*_*rad 4 javascript regex debugging palindrome

我想在javascript中构建一个回文检查器.应删除所有非字母字符,以便像"男人,计划,运河.巴拿马"这样的短语也可以是回文.

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;
  }
}
Run Code Online (Sandbox Code Playgroud)

现在,上述行中的错误在哪里?

该代码适用于一些示例.但是例如"一个人,一个计划,一个运河.巴拿马"和"从不奇怪甚至"都会返回虚假,意味着某处必须是一个错误.

sp0*_*00m 5

您需要为正则表达式提供全局匹配标志:

/[^a-zA-Z]+/g
            ^
Run Code Online (Sandbox Code Playgroud)