当前位置: 移动技术网 > IT编程>开发语言>正则 > 利用正则表达式判断一个给定的字符是否是回文

利用正则表达式判断一个给定的字符是否是回文

2017年12月08日  | 移动技术网IT编程  | 我要评论
如果给定的字符串是回文,返回true,反之,返回false。 如果一个字符串忽略标点符号、大小写和空格,正着读和反着读一模一样,那么这个字符串就是palindrome(回

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

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

注意你需要去掉字符串多余的标点符号和空格,然后把字符串转化成小写来验证此字符串是否为回文。

函数参数的值可以为"racecar","racecar"和"race car"。

关键代码:

去掉字符串中的标点符号和空白格。可以用str.replace()+正则表达式匹配。

var newstr = str.replace(/[\ |\~|`|\!|\@|\#|\$|\%|\^|\&|\*|\(|\)|\-|\_|\+|\=|\||\|\[|\]|\{|\}|\;|\:|\"|\'|\,|\<|\.|\>|\/|\?]/g,"");

完整代码如下:

function palindrome(str) {
// good luck!
var newstr = str.replace(/[\ |\~|`|\!|\@|\#|\$|\%|\^|\&|\*|\(|\)|\-|\_|\+|\=|\||\|\[|\]|\{|\}|\;|\:|\"|\'|\,|\<|\.|\>|\/|\?]/g,"");
var newnewstr = newstr.tolowercase();//转换成小写
var spl = newnewstr.split("");//分割字符串为数组
var newspl = spl.reverse();//翻转
var newrel = newspl.join("");//再次转成字符串
if (newnewstr == newrel) {//比较
return true;
} else return false;
}
palindrome("eye");

以上所述是小编给大家介绍的利用正则表达式判断一个给定的字符是否是回文,希望对大家有所帮助

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网