验证回文串

如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个 回文串 。

字母和数字都属于字母数字字符。

给你一个字符串 s,如果它是 回文串 ,返回 true ;否则,返回 false 。

示例 1:

输入: s = "A man, a plan, a canal: Panama"

输出:true

解释:"amanaplanacanalpanama" 是回文串。

示例 2:

输入:s = "race a car"

输出:false

解释:"raceacar" 不是回文串。

示例 3:

输入:s = " "

输出:true

解释:在移除非字母数字字符之后,s 是一个空字符串 "" 。

由于空字符串正着反着读都一样,所以是回文串。

解法:

js 复制代码
/**
 * @param {string} s
 * @return {boolean}
 */

const isPalindrome = function (s) {
    let list = s.match(/[a-z0-9]/ig)
    if (!list) return true
    let str = ''
    for (let i = list.length - 1; i >= 0; i--) {
        str += list[i]
    }
    return list.join('').toLowerCase() === str.toLowerCase()
};
相关推荐
涵信1 分钟前
第九节 高频代码题-实现Sleep函数(异步控制)
前端·javascript·typescript
爱学习的茄子26 分钟前
【前端实战】三分钟掌握原生JS电影搜索应用,从此告别框架依赖
前端·javascript·深度学习
时光足迹39 分钟前
电子书阅读器之章节拆分
前端·javascript·react.js
WILLF41 分钟前
【JavaScript】原型与原型链
javascript
涵信1 小时前
第八节 工程化与高级特性-模块与命名空间的选择
前端·javascript·typescript
利刃大大2 小时前
【在线五子棋对战】五、前端扫盲:html && css && javascript && ajax && jquery && websocket
前端·javascript·html
安心不心安2 小时前
React状态管理——zustand
javascript·react.js·ecmascript
啪叽2 小时前
探索鲜为人知的浏览器API:document.currentScript的实用案例
前端·javascript·dom
我是谁谁2 小时前
Vue3 组合式 API 核心宏详解:defineProps、defineEmits、defineExpose
javascript·vue.js