JQuery使用正则表达式验证手机号,邮箱,身份证(含有港澳台),网址

自己对正则验证也没系统用过,这次自己做个demo,一下子把这些全都用上了,下次有需要直接来拿了。

以下代码是在页面使用JQuery进行验证的,也有在后台进行验证的,可以试试,都一样的原理。

直接上代码:注意:(有些验证规则当然不仅仅是本文的,也许还有其他更好的,可以留言交流)

手机号:(移动-电信-联通


    var tel = $("#PhoneNumber").val();//获取输入的手机号

    var yidongreg = /^(134[012345678]d{7}|1[34578][012356789]d{8})$/;

    var dianxinreg = /^1[3578][01379]d{8}$/;
    var liantongreg = /^1[34578][01256]d{8}$/;
    //var reg = /^1[3|4|5|7|8]d{9}$/;//这一种也可以
    if (yidongreg.test(tel) || dianxinreg.test(tel) || liantongreg.test(tel))

    {

    }

邮箱:

    var emailvalue = $("#EmailUser").val();//获取输入的邮箱
    //var emailreg1 = /^w+([-+.]w+)*@("@")w+([-.]w+)*.w+([-.]w+)*$/;//这个也可以
    var emailreg = /^w+((-w+)|(.w+))*@("@")[A-Za-z0-9]+((.|-)[A-Za-z0-9]+)*.[A-Za-z0-9]+$/;
    if (emailreg.test(emailvalue))

    {

    }

身份证:

    var userCardvalue = $("#UserIDCard").val();//获取输入身份证

    var usercard=/^[1-9]d{7}((0d)|(1[0-2]))(([0|1|2]d)|3[0-1])d{3}$|^[1-9]d{5}[1-9]d{3}((0d)|(1[0-2]))(([0|1|2]d)|3[0-1])d{3}([0-9]|X)$/;(这个包含对年月日那块是否合法的验证)

    var userCardreg = /(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)/;
    var taiwanreg=/^[A-Z][0-9]{9}$/;
    var xianggangreg=/^[A-Z][0-9]{6}([0-9A])$/;
    var aomenreg=/^[157][0-9]{6}([0-9])$/;
      if(userCardreg.test(userCardvalue)||taiwanreg.test(userCardvalue)||xianggangreg.test(userCardvalue)||aomenreg.t      est(userCardvalue))

  {

  }

网址验证:

string urlRegulation = "^((https|http|ftp|rtsp|mms)?://)"
            + "?(([0-9a-zA-Z_!~*'().&=+$%-]+: )?[0-9a-zA-Z_!~*'().&=+$%-]+@)?" //ftp的user@
            + "(([0-9]{1,3}.){3}[0-9]{1,3}" // IP形式的URL- 199.194.52.184
            + "|" // 允许IP和DOMAIN(域名)
            + "([0-9a-zA-Z_!~*'()-].)*" // 域名- www.
            + "([0-9a-zA-Z][0-9a-z-]{0,61})?[0-9a-z]." // 二级域名
            + "[a-zA-Z]{2,6})" // first level domain- .com or .museum
            + "(:[0-9]{1,4})?" // 端口- :80
            + "((/?)|" // a slash isn't required if there is no file name
            + "(/[0-9a-zA-Z_!~*'().;?:@&=+$,%#-]+)+/?)$";

有问题可以留言,我基本上每天都会看一次的。谢谢

原文地址:https://www.cnblogs.com/tec-1988/p/5944189.html