常用正则表达式

作者: Evan是个写代码的小学生 | 来源:发表于2016-12-19 20:04 被阅读46次

    收集一下使用过的正则表达式,基本保证格式正确。
    主要采用js形式,如果是其他语言请注意修改,例如反斜杠的格式等。


    1 IPv4 验证

    var ipv4 = "192.168.99.1"
    var ipv4test = /^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$/
    ipv4test.test(ipv4)
    

    2 IPv6验证

    var ipv61 = "2001:470:1f10:c5a::1/64"
    var ipv62 = "2001:470:20::2"
    var ipv6test = /(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))/
    

    3 有变量的网址正则验证

    其中 congfig5config4 为变量,当有变量时候可以使用RegExp的构造函数来生成正则。

    其中 \ 必须使用 \\\\ 形式。

    var urltest = new RegExp("^https://" + $('.config5').val() + ":[a-zA-Z0-9]+@ipv4\\.tunnelbroker\\.net/nic/update\\?hostname=" + $('.config4').val() + "$");
    

    4 常用手机号

    var phone = /^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/
    

    5 身份证号(18位)

    var idcard = /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/
    

    相关文章

      网友评论

        本文标题:常用正则表达式

        本文链接:https://www.haomeiwen.com/subject/argtvttx.html