Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 删除句点后的空格_Javascript_Regex_Palindrome - Fatal编程技术网

Javascript 删除句点后的空格

Javascript 删除句点后的空格,javascript,regex,palindrome,Javascript,Regex,Palindrome,我试图用Javascript编写一个函数,删除句子中的所有空格和标点符号,然后检查它是否是回文。我已经让它的大部分工作,但它不会删除后,在运河时期的空间。我该怎么做 function palindrome(str) { str = str.toLowerCase(); str = str.replace(/\s+/g, ''); str = str.replace(/,/g , ""); str = str.split('.').join(' ');

我试图用Javascript编写一个函数,删除句子中的所有空格和标点符号,然后检查它是否是回文。我已经让它的大部分工作,但它不会删除后,在运河时期的空间。我该怎么做

function palindrome(str) {

     str = str.toLowerCase();
     str = str.replace(/\s+/g, '');
     str = str.replace(/,/g , "");
     str = str.split('.').join(' ');

    document.write(str);

    if(str.split("").reverse().join("") === str) {
        return true;
    }
    else {
        return false; 
    }
}

palindrome("A man, a plan, a canal. Panama");

使用regx可能有更好的方法,但是您可以

yourString.split(". ").join("");

我会用一个替换空格、逗号和句点

函数回文(str){
str=str.toLowerCase();
str=str.replace(/[\s,\.]+/g,”);
文件编写(str);
if(str.split(“”.reverse().join(“”===str){
返回true;
}
否则{
返回false;
}
}
log(回文(“一个人,一个计划,一条运河,巴拿马”)按此方式检查:

function palindrome(str) {
    str = str.match(/[a-z]+/gi).join("").toLowerCase();
    document.body.innerHTML = str;
    return(str.split("").reverse().join("") === str);
}

palindrome("A man, a plan, a canal. Panama");

移动
str=str.split('.').join('')前一行
str=str.replace(/\s+/g')。您正在替换所有空格,然后使用
str=str.split('.').join('')再次连接它们我只是使用了相同的代码,我并不是说一切都是最优的,但是
替换
是他使代码工作所需要的,你不需要逃避
内部的