toLowerCase 错误的小写字符“İ”
toLowerCase wrong lower characters " İ "
其实我有一个简单的问题。当您检查以下代码时,您就会明白我的意思。
function isPalindrome(string){
string = string.toLowerCase();
var charArr = string.split('');
charArr.forEach( char => {
console.log(char);
})
console.log(charArr.length)
}
isPalindrome("İris");
输出
i
̇ <- what is this ?
r
i
s
5
如您所见添加额外的字符。我无法解决这个问题。有办法解决这个问题吗?
这是有效的。
使用 toLowerCase
后,您必须删除可能的特殊字符。你可以使用 replace(/[^\w\s]/gi, '')
function isPalindrome(str){
var charArr = str.toLowerCase().replace(/[^\w\s]/gi, '').split(""); //toLowerCase --> remove special characters --> split the string
charArr.forEach( char => {
console.log(char);
})
console.log(charArr.length)
}
isPalindrome("İris");
其实我有一个简单的问题。当您检查以下代码时,您就会明白我的意思。
function isPalindrome(string){
string = string.toLowerCase();
var charArr = string.split('');
charArr.forEach( char => {
console.log(char);
})
console.log(charArr.length)
}
isPalindrome("İris");
输出
i
̇ <- what is this ?
r
i
s
5
如您所见添加额外的字符。我无法解决这个问题。有办法解决这个问题吗?
这是有效的。
使用 toLowerCase
后,您必须删除可能的特殊字符。你可以使用 replace(/[^\w\s]/gi, '')
function isPalindrome(str){
var charArr = str.toLowerCase().replace(/[^\w\s]/gi, '').split(""); //toLowerCase --> remove special characters --> split the string
charArr.forEach( char => {
console.log(char);
})
console.log(charArr.length)
}
isPalindrome("İris");