如何检测仅包含空格的字符串?
2022-08-30 05:08:42
包含一个空格的字符串长度始终等于 1:
alert('My str length: ' + str.length);
空格是一个字符,因此:
str = " ";
alert('My str length:' + str.length); // My str length: 3
如何区分空字符串和仅包含空格的字符串?如何检测仅包含空格的字符串?
包含一个空格的字符串长度始终等于 1:
alert('My str length: ' + str.length);
空格是一个字符,因此:
str = " ";
alert('My str length:' + str.length); // My str length: 3
如何区分空字符串和仅包含空格的字符串?如何检测仅包含空格的字符串?
为此,您可以使用正则表达式删除字符串中的所有空格。如果结果字符串的长度为 ,则可以确定原始字符串仅包含空格。试试这个:0
var str = " ";
if (!str.replace(/\s/g, '').length) {
console.log('string only contains whitespace (ie. spaces, tabs or line breaks)');
}
最快的解决方案是使用正则表达式原型函数 test() 并查找任何不是空格、制表符或换行符的字符:\S
if (!/\S/.test(str)) {
// Didn't find something other than a space which means it's empty
}
如果您有一个超长的字符串,它可能会产生重大影响,因为它会在找到非空格字符后立即停止处理。