https://leetcode.com/problems/valid-palindrome/

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/**
* @param {string} s
* @return {boolean}
*/
var isPalindrome = function(s) {
let arr = Array.from(s)
let p = 0
let q = arr.length - 1
while (p <= q) {
let reg = /[a-zA-Z0-9]/
if (!reg.test(arr[p])) {
p++
} else if (!reg.test(arr[q])) {
q--
} else {
if (arr[p].toLowerCase() !== arr[q].toLowerCase()) {
return false
}
p++
q--
}
}
return true
};