JavaScript可以使用正则表达式replace(/(^s*)|(s*$)/g,"")将字符串中的空格使用空字符替换,通过判断替换后字符长度来判断字符是否为空格。
javascript判断是否为空格的方法:
判断字符串是否为“空”字符即用户输入了空格var strings = ' ';
if (strings.replace(/(^s*)|(s*$)/g, "").length ==0)
{
alert('不能为空');
}
判断输入字符串是否为空或者全部都是空格function isNull( str ){
if ( str == "" ) return true;
var regu = "^[ ]+$";
var re = new RegExp(regu);
return re.test(str);
}
strings.replace(/(^\s*)|(\s*$)/g, “”):
用正则表达式将前后空格用空字符串替代
^表示字符串必须以后面的规则开头, 在这里就是说字符串必须以\s*开头\s 是空格的意思, * 表示有0个或多个\s* 就是有0个或多个空格(^\s*) 表示的就是以0个空格或者多个空格开头| 表示或的意思,。
也就是满足| 左边的也成立, 满足 | 右面的也成立$ 的意思是字符串必须以前面的规则结尾(\s*$) 的意思就是, 以0个空格或者多个空格结尾/…/g 是正则表达式的属性, 表示全文匹配, 而不是找到一个就停止。
所以这个正则表达式替换的就是前导空格和后导空格。
因为有前导空格, 就说明以0个或多个空格开头, 满足正则表达式中 | 前面的条件: (^\s*)
而如果有后导空格, 就说明以0个或多个空格结尾, 满足正则表达式中 | 后面的条件: (\s*$)