【www.gdgbn.com--php函数】

js 各种常用表单验证正则函数(数字,邮箱,整数,小数)日期等

/************************************************
    验证各种数据格式
*************************************************/

//为数字添加,

function formatnum(v){
    var reg = /(?=(?!b)(ddd)+(?!d))/g;
    return v.replace(reg,",");
}

//长度非0(全空格也视为有效)

function notnull(v){
    return v.length > 0;
}

//验证浮点数(必须是完整浮点数或整数, 如1.0或1, 而不能是.1或1.)

function c_float(v){
    var reg = /^d+(.d+)?$/;
    return reg.test(v);
}


//验证整数

function c_int(v){
    var reg = /^d+$/;
    return reg.test(v);
}


//验证邮箱

function c_mail(v){
    var reg = /^w+((-w+)|(.w+))*@[a-za-z0-9]+((.|-)[a-za-z0-9]+)*.[a-za-z0-9]+$/;
    return reg.test(v);
}


//验证邮编,由6位数字组成

function c_postalcode(v){
    return /^d{6}$/.test(v);
}


//验证码

function c_validatecode(v){
    return /^w{4}$/.test(v);
}

//验证"2008-01-01"格式的字符串

function c_datestr(val){
    if(val == "") return true;  //生日不是必填项
   
    var reg = /^d{4}-d{1,2}-d{1,2}$/;
 if(!reg.test(val)) return false;
 
 var y,m,d;
 var date_list = val.split("-");
 y = eval(date_list[0]);
 m = eval(date_list[1]);
 d = eval(date_list[2]);
 if(y<1 || m<1 || m>12 || d<1 || y>2900 || y<1903) return false;
 
 var month_day = [0,31,28,31,30,31,30,31,31,30,31,30,31];
 
 if(d>month_day[m]){
  if(m==2){
   if(((y%100!=0 && y%4==0) || y%400==0) && d<30) 
                return true;
  }else{
      return false;
  }
 }else return true;
}

本文来源:http://www.gdgbn.com/jiaocheng/29387/