算法描述:
如果给定的字符串是回文,返回true
,反之,返回false
。
如果一个字符串忽略标点符号、大小写和空格,正着读和反着读一模一样,那么这个字符串就是palindrome(回文)。
注意你需要去掉字符串多余的标点符号和空格,然后把字符串转化成小写来验证此字符串是否为回文。
函数参数的值可以为"racecar"
,"RaceCar"
和"race CAR"
。
算法解析:1,首先将字符串的标点符号,空格去掉
2,忽略字符串的大小
3,将字符串转化为数组在进行翻转匹配
算法实现:利用正则匹配将字符串中的标点符号和空格进行过滤,用replace函数可以做到
只要不是数字和字母的其余东西全部过滤掉,正则表达式为:
/[^a-zA-Z0-9]/g
function palindrome(str) {
// Good luck!
var str_obj = str.replace(/[^a-zA-Z0-9]/g,'').toLowerCase().split('');
if(str_obj.join('') === str_obj.reverse().join('')){
return true;
}else
return false;
}
palindrome("eye");