求一正则表达式为空,或者是任意字符数字(不能以逗号结尾和开头)或者以逗号隔开(不能以逗号结尾和开头)
如 空字符可以
 1,2.5,tt,dd 可以
13ffsdfdf 可以
,13,a 不可以
a,23, 不可以

解决方案 »

  1.   


    ^(?:\s+|[A-Za-z0-9]+|([A-Za-z0-9]+\,[A-Za-z0-9]+){1,})$
    试试
      

  2.   

    <input type="text" id="id" name="name" />
    <script type="text/javascript">
    //换种思维
    document.getElementById("id").onblur=function(){
        var v=this.value,err=false;
        if(v!=""){
            var arr= v.split(",");
            for(var i=0;i<arr.length;i++){
                if(arr[i]=="")err=true;
            }
        }
        if(err){
            alert("字符不合法");
            this.value="";
        }else{
            //alert("通过审核");
        }
    }
    </script>
      

  3.   

    <input type="text" onblur = "xx(this.value)">
    <script>
    window.xx = function(v){
    alert(/^(?:\s*|[0-9a-z]{1,2}|[0-9a-z][0-9a-z,]*[0-9a-z])$/i.test(v))
    }
    </script>
      

  4.   

    <input type="text" onblur = "xx(this.value)">
    <script>
    window.xx = function(v){
    alert(/^(?:\s*|[0-9a-z]{1,2}|[0-9a-z][0-9a-z,]*[0-9a-z])$/i.test(v))
    }
    </script>
      

  5.   

    var a=["1,2.5,tt,dd","13ffsdfdf",",13,a","a,23,"];
    var reg=/^(?!,).*(?!,).$/;
    for(var i in a){
    alert(a[i]+":"+reg.test(a[i]));
    }
    ??