检查回文字符串
如果给定的字符串是回文,返回true
,反之,返回false
。
如果一个字符串忽略标点符号、大小写和空格,正着读和反着读一模一样,那么这个字符串就是palindrome(回文)。
注意你需要去掉字符串多余的标点符号和空格,然后把字符串转化成小写来验证此字符串是否为回文。
函数参数的值可以为"racecar"
,"RaceCar"
和"race CAR"
。
目前想到的办法只有反转字符串以后比较,需要先转换成数组调用reverse方法
代码如下:
function palindrome(str) { var lowerStr=str.toLowerCase(); //是否有大写字符,全部转为小写 var replaceStr=lowerStr.replace(/[^a-z0-9]/g,""); //全局匹配,去掉非数字和字母的字符,空白字符 var reverseStr=replaceStr.split("").reverse().join(""); //反转字符串 if(reverseStr == replaceStr){ //判断时不能比较原str ,需要比较处理后的replaceStr return true; }else{ return false; } }
想到其他办法再更新