利用正则表达式判断一个给定的字符是否是回文
如果给定的字符串是回文,返回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");
以上所述是小编给大家介绍的利用正则表达式判断一个给定的字符是否是回文,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关文章
只能是字母或数字或者是字母和数字的组合的正则previousSibling
只能是字母或数字或者是字母和数字的组合的正则previousSibling...2007-03-03
最全的用正则批量去除Teleport Pro整站下载文件冗余代码
有时候我们用Teleport Pro整站下载系统,批量下载一个网站的内容时,里面会加入一些冗余代码,而且大多都不一样,这时候我们就只好用正则表达式来替换了2013-11-11
javascript正则表达式标记中/g /i /m的用法,以及实例
正则的思想都是一样的,但是具体的写法会有所不同,在这里提到的/g,/i,/m在其他的地方也许就不能用了,需要的朋友可以参考下2020-02-02


最新评论