苏飞论坛

标题: javascript正则表达式去除空格,验证是否存在空格 [打印本页]

作者: 站长苏飞    时间: 2014-2-17 09:11
标题: javascript正则表达式去除空格,验证是否存在空格
javascript正则表达式去除空格,验证是否存在空格

今天有个功能需要验证字符串中是否存在空格,
其实这个使用正则是最简单的,于是我这样写了
[HTML] 纯文本查看 复制代码
 var reg = /(^\s+)|(\s+$)/g;
                if (reg.test(k)) {
                    $("#msg").html("输入的关键字不能包含空格")
                    return false;
                }

其实这样就够了,只要在这个字符串中有空格就会有提示“输入的关键字不能包含空格”
为了方便大家使用我再介绍多一些相关的操作
[JavaScript] 纯文本查看 复制代码
<script>
function delHtmlTag(str)
{
          var str=str.replace(/<\/?[^>]*>/gim,"");//去掉所有的html标记
        var result=str.replace(/(^\s+)|(\s+$)/g,"");//去掉前后空格
        return  result.replace(/\s/g,"");//去除文章中间空格
}
</script>

上面这个方法是去除空格的方法~~ 那么我们经常会遇到类似的需求,你永远不知道用户会输什么,那么你只有尽量去避免他输入你不想要的。上面的改动下也可以变成验证存在
空格给出提示
[JavaScript] 纯文本查看 复制代码
//验证内容是否包含空格
function checkTextSpace(obj,temp){
     var reg=/(^\s+)|(\s+$)/g;
     var alertValue="输入内容包含空格,请出新输入!";
     //temp用来标识内容是否允许存在空格1为可存在0为不存在
     if(temp==1){
         reg=/(^\s{5,})|(\s{5,}$)|(\s{5,})/g;
         alertValue="内容中连续输入空格数超过5个,请重新输入!";
     }
    if(reg.test(obj.value)){
        alert(alertValue);
        obj.focus();
        return false;
    }
}
上面的这段代码是我遇到一个需求所改,你也可以自己更改,我来简单解释下(高手勿喷):
^匹配字符串的开始
$匹配字符串的结束
/s匹配任意空白字符

/(^\s+)|(\s+$)/g 这个正则就是匹配内容中是否包含空格,不管前后还是中间,都能匹配到
/(^\s{5,})|(\s{5,}$)|(\s{5,})/g 这个正则是我做另一个验证改的,主要是匹配连续输入空格数
\s{5,} 这个代表匹配5次或者更多次
\s* 这个代表重复0次或者更多次
\s+这个代表重复1次或者更多次
\s?这个代表重复0次或者1次



作者: cload    时间: 2014-2-17 09:30
非常感谢你帮了我的大忙,真的太感谢你啦!




欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4