常用数据验证正则表达式作者:脚本王子 日期:2008-10-26

  1. var regexEnum = 
  2. {
  3.     intege:"^-?[1-9]//d*$",                    //整数
  4.     intege1:"^[1-9]//d*$",                    //正整数
  5.     intege2:"^-[1-9]//d*$",                    //负整数
  6.     num:"^([+-]?)//d*//.?//d+$",            //数字
  7.     num1:"^[1-9]//d*|0$",                    //正数(正整数 + 0)
  8.     num2:"^-[1-9]//d*|0$",                    //负数(负整数 + 0)
  9.     decmal:"^([+-]?)//d*//.//d+$",            //浮点数
  10.     decmal1:"^[1-9]//d*.//d*|0.//d*[1-9]//d*$",      //正浮点数
  11.     decmal2:"^-([1-9]//d*.//d*|0.//d*[1-9]//d*)$",  //负浮点数
  12.     decmal3:"^-?([1-9]//d*.//d*|0.//d*[1-9]//d*|0?.0+|0)$",  //浮点数
  13.     decmal4:"^[1-9]//d*.//d*|0.//d*[1-9]//d*|0?.0+|0$",   //非负浮点数(正浮点数 + 0)
  14.     decmal5:"^(-([1-9]//d*.//d*|0.//d*[1-9]//d*))|0?.0+|0$",  //非正浮点数(负浮点数 + 0)
  15.     email:"^//w+((-//w+)|(//.//w+))*//@[A-Za-z0-9]+((//.|-)[A-Za-z0-9]+)*//.[A-Za-z0-9]+$"//邮件
  16.     color:"^[a-fA-F0-9]{6}$",                //颜色
  17.     url:"^http[s]?://([//w-]+//.)+[//w-]+([//w-./?%&=]*)?$",    //url
  18.     chinese:"^[//u4E00-//u9FA5//uF900-//uFA2D]+$",                    //仅中文
  19.     ascii:"^[//x00-//xFF]+$",                //仅ACSII字符
  20.     zipcode:"^//d{6}$",                        //邮编
  21.     mobile:"^(13|15)[0-9]{9}$",                //手机
  22.     ip4:"^(25[0-5]|2[0-4]//d|[0-1]//d{2}|[1-9]?//d)//.(25[0-5]|2[0-4]//d|[0-1]//d{2}|[1-9]?//d)//.(25[0-5]|2[0-4]//d|[0-1]//d{2}|[1-9]?//d)//.(25[0-5]|2[0-4]//d|[0-1]//d{2}|[1-9]?//d)$",    //ip地址
  23.     notempty:"^//S+$",                        //非空
  24.     picture:"(.*)//.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga)$",    //图片
  25.     rar:"(.*)//.(rar|zip|7zip|tgz)$",                                //压缩文件
  26.     date:"^//d{4}(//-|///|/.)//d{1,2}//1//d{1,2}$",                    //日期
  27.     qq:"^[1-9]*[1-9][0-9]*$",                //QQ号码
  28.     tel:"^(([0//+]//d{2,3}-)?(0//d{2,3})-)?(//d{7,8})(-(//d{3,}))?$",    //电话号码的函数(包括验证国内区号,国际区号,分机号)
  29.     username:"^//w+$",                        //用来用户注册。匹配由数字、26个英文字母或者下划线组成的字符串
  30.     letter:"^[A-Za-z]+$",                    //字母
  31.     letter_u:"^[A-Z]+$",                    //大写字母
  32.     letter_l:"^[a-z]+$",                    //小写字母
  33.     idcard:"^[1-9]([0-9]{14}|[0-9]{17})$"    //身份证
  34. }
  35. var aCity={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:"国外"
  36. function isCardID(sId){ 
  37.     var iSum=0 ;
  38.     var info="" ;
  39.     if(!/^/d{17}(/d|x)$/i.test(sId)) return "你输入的身份证长度或格式错误"
  40.     sId=sId.replace(/x$/i,"a"); 
  41.     if(aCity[parseInt(sId.substr(0,2))]==nullreturn "你的身份证地区非法"
  42.     sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2)); 
  43.     var d=new Date(sBirthday.replace(/-/g,"/")) ;
  44.     if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))return "身份证上的出生日期非法"
  45.     for(var i = 17;i>=0;i --) iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11) ;
  46.     if(iSum%11!=1) return "你输入的身份证号非法"
  47.     return true;//aCity[parseInt(sId.substr(0,2))]+","+sBirthday+","+(sId.substr(16,1)%2?"男":"女") 
  48. //短时间,形如 (13:04:06)
  49. function isTime(str)
  50. {
  51.     var a = str.match(/^(/d{1,2})(:)?(/d{1,2})/2(/d{1,2})$/);
  52.     if (a == null) {return false}
  53.     if (a[1]>24 || a[3]>60 || a[4]>60)
  54.     {
  55.         return false;
  56.     }
  57.     return true;
  58. }
  59. //短日期,形如 (2003-12-05)
  60. function isDate(str)
  61. {
  62.     var r = str.match(/^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2})$/); 
  63.     if(r==null)return false
  64.     var d= new Date(r[1], r[3]-1, r[4]); 
  65.     return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
  66. }
  67. //长时间,形如 (2003-12-05 13:04:06)
  68. function isDateTime(str)
  69. {
  70.     var reg = /^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2}) (/d{1,2}):(/d{1,2}):(/d{1,2})$/; 
  71.     var r = str.match(reg); 
  72.     if(r==nullreturn false
  73.     var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]); 
  74.     return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
 

你可能感兴趣的:(WEBFRONT,正则表达式,脚本,null,7zip,mobile,email)