function palindrome(str) {
//Clean up string
var re = '/[^a-z0-9]/gi';
str=str.toLowerCase();
str=str.replace(re, '');
console.log(str);
//Reverse string and check
var pstr = str.split('').reverse().join('');
if (pstr === str){
return true;
}
return false;
}
palindrome("__Eye");
我想测试一个回文语句。我正在使用
https://regex101.com/
上面的函数试图检查字符串值是否是回文,如果是,则返回true,如果不是,则返回false
race car
它的前后拼写相同
我的正则表达式是
'[^a-z0-9]/gi'
它选择所有标点符号、逗号和空格,以便使用
replace
问题:
console.log(str)
它没有反映出正确的输出。例如
__eye
eye
输出,但不是
在此处复制测试代码
https://repl.it/JVCf/21
:
它的
var re = /[^a-z0-9]/gi;
不是
var re = '/[^a-z0-9]/gi';