<code> function palindrome(str) { return str.replace(/[\W_]/g,'').toLowerCase() === str.replace(/[\W_]/g,'').toLowerCase().split('').reverse().join(''); } palindrome("0_0 (: /-\ :) 0-0"); </code>
為什麼W
沒有匹配到下劃線_ W
不是匹配非文字和數字嗎?
<code> function palindrome(str) { return str.replace(/[\W_]/g,'').toLowerCase() === str.replace(/[\W_]/g,'').toLowerCase().split('').reverse().join(''); } palindrome("0_0 (: /-\ :) 0-0"); </code>
為什麼W
沒有匹配到下劃線_ W
不是匹配非文字和數字嗎?
首先 w
是匹配數字字母下劃線:[0-9a-zA-Z_]
,W
是w
的非,也就是不匹配數字字母下劃線