经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 其他 » 正则表达式 » 查看文章
JS正则表达式封装与使用操作示例
来源:jb51  时间:2019/5/15 9:56:55  对本文有异议

本文实例讲述了JS正则表达式封装与使用操作。分享给大家供大家参考,具体如下:

对一些简单的输入进行正则判断的整理,待优化

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title>正则表达式封装</title>
</head>
<body>
<script>
  //邮箱
  var emailReg = /^([a-z0-9A-Z_]+[-|\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\.)+[a-zA-Z]{2,}$/;
  //手机号
  var mobileReg = /^0?1(3|4|5|7|8)\d{9}$/;
  //电话号码
  var telReg = /(^[0-9]{3,4}-[0-9]{7,8}-[0-9]{3,4}$)|(^[0-9]{3,4}-[0-9]{7,8}$)|(^[0-9]{7,8}-[0-9]{3,4}$)|(^[0-9]{7,15}$)/;
  var domainReg = /http:\/\/.+/;
  var zipcodeReg = /^[0-9]{6}$/;
  //数字
  var numReg = /^[0-9]+$/;
  //身份证
  var isIDCardReg=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;
  //用户名
  var userNameReg = /^[_a-zA-Z0-9\u4E00-\u9FFF]{2,20}/;
  //中文
  var zh = /[\u4E00-\u9FFF]/g;
  var httpUrl=/[a-zA-z]+:\/\/[^s]*/;
  var doubleReg=/((^0\.)|(^[1-9]+[0-9]*\.\d)$)|(^[1-9]+[0-9]*$)/;
  function checkEmail(email) {
    return emailReg.test(email);
  }
  function checkDouble(double) {
    return doubleReg.test(double);
  }
  function checkHttpUrl(url) {
    return httpUrl.test(url);
  }
  function checkIsIDCard(isIDCard) {
    return isIDCardReg.test(isIDCard);
  }
  function checkMobile(mobile) {
    return mobileReg.test(mobile);
  }
  function checkTel(tel) {
    return telReg.test(tel);
  }
  function checkDomain(domain) {
    return domainReg.test(domain);
  }
  function checkZipcode(zipcode) {
    return zipcodeReg.test(zipcode);
  }
  function checkNum(num) {
    return numReg.test(num);
  }
  function checkUserName(userName) {
    if(userName=="") {
      return false;
    }
    var len = userName.length;
    var m = userName.match(this.zh);
    if(m != null) {
      len += m.length;
    }
    return userNameReg.test(userName) && (len>=4 && len<=32);
  }
  var phone="1839094574";
  console.log(checkMobile(phone));
</script>
</body>
</html>