javaScript 中常用的正则表达式

  var regexEnum = { intege:"^-?[1-9]\\d*$",//整数 intege1:"^[1-9]\\d*$",//正整数 intege2:"^-[1-9]\\d*$",//负整数 num:"^([+-]?)\\d*\\.?\\d+$",//数字 num1:"^[1-9]\\d*|0$",//正数(正整数 + 0) num2:"^-[1-9]\\d*|0$",//负数(负整数 + 0) decmal:"^([+-]?)\\d*\\.\\d+$",//浮点数 decmal1:"^[1-9]\\d*.\\d*|0.\\d*[1-9]\\d*$", //正浮点数 decmal2:"^-([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*)$", //负浮点数 decmal3:"^-?([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*|0?.0+| 0)$", //浮点数 decmal4:"^[1-9]\\d*.\\d*|0.\\d*[1-9]\\d*|0?.0+|0$" , //非负浮点数(正浮点数 + 0) decmal5:"^(-([1-9]\\d*.\\d*|0.\\d*[1-9]\\d*))|0?.0 +|0$", //非正浮点数(负浮点数 + 0) email:"^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\ \.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$", //邮件 color:"^[a-fA-F0-9]{6}$",//颜色 url:"^http[s]?:\\/\\/([\\w-]+\\.)+[\\w-]+([\\w-./? %&=]*)?$",//url chinese:"^[\\u4E00-\\u9FA5\\uF900-\\uFA2D]+$",//仅中文 ascii:"^[\\x00-\\xFF]+$",//仅ACSII字符 zipcode:"^\\d{6}$",//邮编 mobile:"^(13|15|18)[0-9]{9}$",//手机 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地址 notempty:"^\\S+$",//非空 picture:"(.*)\\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png| raw|tga)$",//图片 rar:"(.*)\\.(rar|zip|7zip|tgz)$",//压缩文件 date:"^\\d{4}(\\-|\\/|\.)\\d{1,2}\\1\\d{1,2}$",//日期 qq:"^[1-9]*[1-9][0-9]*$",//QQ号码 tel:"^(([0\\+]\\d{2,3}-)?(0\\d{2,3})-)?(\\d{7,8})( -(\\d{3,}))?$",//电话号码的函数(包括验证国内区号,国际区号,分机号) username:"^\\w+$",//用来用户注册。匹配由数字、26个英文字母或者下划线组成的字符串 letter:"^[A-Za-z]+$",//字母 letter_u:"^[A-Z]+$",//大写字母 letter_l:"^[a-z]+$",//小写字母 idcard:"^[1-9]([0-9]{14}|[0-9]{17})$"//身份证
  }
  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:"国外"}
  function isCardID(sId){
  var iSum=0 ; var info="" ; if(!/^\d{17}(\d|x)$/i.test(sId)) return "你输入的身份证长度或格式错误"; sId=sId.replace(/x$/i,"a"); if(aCity[parseInt(sId.substr(0,2))]==null) return "你的身份证地区非法"; sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10 ,2))+"-"+Number(sId.substr(12,2)); var d=new Date(sBirthday.replace(/-/g,"/")) ; if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))return "身份证上的出生日期非法"; for(var i = 17;i>=0;i --) iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11) ; if(iSum%11!=1) return "你输入的身份证号非法"; return true;//aCity[parseInt(sId.substr(0,2))]+","+sBirth day+","+(sId.substr(16,1)%2?"男":"女")
  }
  //短时间,形如 (13:04:06)
  function isTime(str)
  {
  var a = str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/); if (a == null) {return false} if (a[1]>24 || a[3]>60 || a[4]>60) { return false; } return true;
  }
  //短日期,形如 (2003-12-05)
  function isDate(str)
  {
  var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/) ; if(r==null)return false; var d= new Date(r[1], r[3]-1, r[4]); return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d. getDate()==r[4]); } //长时间,形如 (2003-12-05 13:04:06)
  function isDateTime(str)
  {
  var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/; var r = str.match(reg); if(r==null) return false; var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]); 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]);
  }
  String.prototype.isMobile = function() {
  return (/^(?:13\d|15\d|18\d)-?\d{5}(\d{3}|\*{3})/.test(th is.Trim()));
  }
  function chkForm(telmob)
  {
  if (telmob.isMobile() || telmob.isTel()|| telmob.isTelNoZone()) { telmob = telmob.Trim(); return true; } else { return false; }
  }
  使用方法:
  // 用户名验证示列
  function isNull2(){
  var userNameSpan = document.getElementById("userNameSpan");
  var userName = document.getElementById("userName").value;
  if(userName ==""){
  userNameSpan.innerHTML="plase enter in"
  return false;
  }
  
  plase enter nums";--%>
  
  
  var rule =/^\\w+$/; // /^[0-9]*[1-9][0-9]*$/;正则表达式在/与/之间
  if(!rule.test(userName)){
  userNameSpan.innerHTML="plase enter nums words _ $ ";
  return false;
  }
  if(userName.length>15 || userName.lengthplase enter length gt 4 and lt 15 ";
  return false;
  }
  } function isNull3(){ userNameSpan.innerHTML=""; }
  
  用户名:
  
  
  
  
  
  效果图:
  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值