回文算法

function cleanStr(str){
  // 过滤掉字符串中的所有空格、下划线
  var result = str.replace(/\s+/g,'').replace(/\_+/g,'').match(/\w/g).join('');
  // 过滤掉所有的标点符号, \w是匹配一个单字字符(字母,数字和下划线)
  // \W是匹配一个非单字字符, 当然包括标点符号了
  return result;
}

如果给定的字符串是回文,返回true,反之,返回false

palindrome(回文)是指一个字符串忽略标点符号、大小写和空格,正着读和反着读一模一样。

 

注意:您需要删除字符串多余的标点符号和空格,然后把字符串转化成小写来验证此字符串是不是回文。

函数参数的值可以为"racecar""RaceCar""race CAR"

function palindrome(str) {
// Good luck!
str = str.replace(/\s+/g,'').replace(/\_+/g,'').match(/\w/g).join('');
str = str.toLowerCase();
var  str1 = [];
var  str2 = [];

for(var i = 0;i<str.length;i++){
    str1.push(str[i]);
}
for(var j = 1;j<=str.length;j++){
    str2.push(str[str.length-j]);
}
for(var k = 0;k<=str1.length;k++){
    if(str1[k]!=str2[k]){
        return false;
    }
}
return true;
}



palindrome("1 eye for of 1 eye.");

猜你喜欢

转载自www.cnblogs.com/Gaohy/p/9967001.html