javascript利用正则表达式验证输入数据

来源:互联网 发布:php制作登录页面 编辑:程序博客网 时间:2024/05/23 05:06
function trim(str)   // 用正则表达式将前后空格        
{      
     
    // 用空字符串替代。      
    var t = str.replace(/(^\s*)|(\s*$)/g, "");    
    return t.replace(/(^ *)|( *$)/g, "");    
}


function  bytelength(szString)//获取字符串长度
{
    return szString.replace(new RegExp("[^\x00-\xff]", "g"), "  ").length;
}

function checkPassword(e)//判断用户密码
{
    var ok = "1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM_.-";
    for(var i=0; i<e.length; i++)
    {
        if (ok.indexOf(e.charAt(i))<0)
        {
            return false;
        }
    }
    return true;
}
function   isEmail(obj)//检验邮件地址    
       {    
        var   email=obj;    
        var   pattern=/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/;    
        flag=pattern.test(email);    
        if(flag)    
        {    
         return   true;    
        }    
        else    
         {    
          return   false;    
            }    
          }     

function isMobel(value)//检验手机号,兼容13,15,18开通的中国手机号码
{
if(/^13\d{9}$/g.test(value)||(/^15[0-35-9]\d{8}$/g.test(value))||
(/^18[05-9]\d{8}$/g.test(value))){
            return true;
}else{
            return false;
}
}

function   isZipCode(obj) //检验6位数邮编 ,国内的6为有效邮编
       {    
        var   post=obj;    
        var   pattern=/^[1-9][0-9]{5}$/;    
        flag=pattern.test(post);    
        if(flag)    
        {    
         return   true;    
        }    
        else    
         {    
          return   false;    
            }    
          }
function   isID(obj)//检验省份证是否合法   
       {    
        var   post=obj;    
        var   pattern=/^((11|12|13|14|15|21|22|23|31|32|33|34|35|36|37|41|42|43|44|45|46|50|51|52|53|54|61|62|63|64|65|71|81|82|91)\d{4})((((19|20)(([02468][048])|([13579][26]))0229))|((20[0-9][0-9])|(19[0-9][0-9]))((((0[1-9])|(1[0-2]))((0[1-9])|(1\d)|(2[0-8])))|((((0[1,3-9])|(1[0-2]))(29|30))|(((0[13578])|(1[02]))31))))((\d{3}(x|X))|(\d{4}))$/;      
        flag=pattern.test(post);    
        if(flag)    
        {    
         return   true;    
        }    
        else    
         {    
          return   false;    
            }    
          }
function   isQQ(obj) //检验QQ号码  
       {    
        var   post=obj;    
        var   pattern=/[1-9][0-9]{4,}/;    
        flag=pattern.test(post);    
        if(flag)    
        {    
         return   true;    
        }    
        else    
         {    
          return   false;    
            }    
          }
function   isPhone(obj)//检验固定电话    
       {    
        var   post=obj;    
        var   pattern=/\d{3}-\d{8}|\d{4}-\d{7}/;    
        flag=pattern.test(post);    
        if(flag)    
        {    
         return   true;    
        }    
        else    
         {    
          return   false;    
            }    
          }
function   isInteger(obj)//检验是否整数    
{    
 var   post=obj;    
 var   pattern=/^(0|([1-9]\d*))$/;    
 flag=pattern.test(post);    
 if(flag)    
 {    
  return   true;    
 }    
 else    
  {    
   return   false;    
     }    
   }

 使用例子:

function validate()
      {
          var    name = document.getElementsByName("name")[0];
          var age = document.getElementsByName("age")[0];
          var sex = document.getElementsByName("sex");
          var birthday = document.getElementsByName("birthday")[0];
          
          

          if(name.value == "")
          {
              document.getElementById('uname').innerHTML = '*用户名不能为空';
              name.focus();
              return false;
          }
          else
          {
              document.getElementById('uname').innerHTML = '*填写正确!';
          }
          
          if(age.value == "")
          {
              document.getElementById('uage').innerHTML = '*年龄不能为空!';
              age.focus();
              return false;
          }
          if(!isInteger(age.value))//使用上面的isInteger()判断函数,判断用户输入的年龄是否为整数
        {
            
               document.getElementById('uage').innerHTML = '*年龄只能为正整数!';
            age.focus();
            return false;
        }
        else
        {
            document.getElementById('uage').innerHTML = '*填写正确!';
        }
          if(!sex[0].checked && !sex[1].checked)
          {
              
              document.getElementById('usex').innerHTML = '*请选择性别!';
              return false;
          }
          else
          {
              document.getElementById('usex').innerHTML = '*您已选择!'
          }
          if(birthday.value == "")
          {
              
              document.getElementById('ubirthday').innerHTML = '*请填写生日!';
              birthday.focus();
              return false;
          }
          else
          {
              document.getElementById('ubirthday').innerHTML = '*填写正确!';
          }
          return true;
      }

 




 
原创粉丝点击