• Check for Palindromes


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

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

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

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

    当你完成不了挑战的时候,记得开大招'Read-Search-Ask'。

    function palindrome(str) {
      var oldstr=str.replace(/[-,.,_,/,(,),\, ,:,]/g,'').toLowerCase(); //用正则把空格和标点符号去掉 
      var newstr=oldstr.toLowerCase().split('').reverse().join('');  //把单词字母顺序颠倒 
      return (oldstr===newstr);  //判断是否是回文
    }

    String.prototype.replace()方法返回一个由替换值替换一些或所有匹配的模式后的新字符串。模式可以是一个字符串或者一个正则表达式,替换值可以是一个字符串或者一个每次匹配都要调用的函数。该方法并不改变调用它的字符串本身,而只是返回一个新的替换后的字符串。

    String.prototype.toLowerCase() 会将调用该方法的字符串值转为小写形式,并返回。toLowerCase 不会影响字符串本身的值。

    方法二:

    function palindrome(str) {
      var temp = str.toLowerCase().replace(/[sW_]/g,'');
      return temp===(temp.split('').reverse().join(''));
    }
    人生如逆旅,我亦是行人
  • 相关阅读:
    [leetCode]剑指 Offer 36. 二叉搜索树与双向链表
    [leetCode]剑指 Offer 35. 复杂链表的复制
    剑指 Offer 34. 二叉树中和为某一值的路径
    剑指 Offer 33. 二叉搜索树的后序遍历序列
    剑指 Offer 32
    [leetCode]剑指 Offer 31. 栈的压入、弹出序列
    POJ
    POJ
    POJ
    POJ
  • 原文地址:https://www.cnblogs.com/renbo/p/6618561.html
Copyright © 2020-2023  润新知