
回文算法挑战
方法一:
function palindrome(str) {
// Good luck!
var re = /[\W_]/g; // 或者 var re = /[^A-Za-z0-9]/g;
var lowRegStr = str.toLowerCase().replace(re,'');
var reverseStr = lowRegStr.split('').reverse().join('');
return reverseStr === lowRegStr;
}
palindrome("eye");
方法二:
function palindrome(str) {
var pattern = new RegExp("[%--_`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——| {}【】‘’\";:”“'。,、?]");
var rs = '',
sr = '';
for (var i = 0; i < str.length; i++) {
rs = rs + str.substr(i, 1).replace(pattern, '');
}
rs = rs.toLowerCase();
sr = rs.split('').reverse().join('');
// Good luck!
if(rs == sr)
{
return true;
} else{
return false;
}
}
palindrome("eye");