正则实战

实战

纸上得来终觉浅 绝知此事要躬行

下面的实例都是简单的校验(前端一般够用)

  1. 手机号

    1
    2
    3
    // 规则:
    /*纯数字 1开头 第二位34578 总共11位*/
    var telReg = /^1[34578]\d{11}/
  2. qq号

    1
    2
    3
    //规则:
    /*纯数字 非0数字开头 最少4位*/
    var qqReg = /^[1-9]\d{4,}/
  3. 邮箱

    1
    2
    3
    //规则:xxx@xx.xxx
    /*1. 肯定包含一个@ 2. 只能是字母数字,_- . */
    var qqReg = /^[\w\.-]+@[\w\.-]+\.[a-z\.]{2,6}/
  4. 匹配url地址

    1
    2
    3
    //规则:
    /*1. 以http:// https:// 开头 2. */
    var urlReg =/^https?:\/\/[\w-]+\.[a-z]{2,6}.*/
  5. 身份证号

    1
    2
    //规则:15或18位数字 或者 17位数字+X|x
    var identifyReg = /(^\d{15}$)|(^\d{17}[\dXx]$)/
  6. 一段html代码 替换style=”xxx”为空

    1
    var styleReg = /\bstyle="[^"]*"/g
  7. 把url解析成一个对象

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    // http://www.qq.com/index.html?key1=1&key2=2
    /**
    {
    protocol: "http",
    hostname: "www.qq.com",
    pathname: "index.html",
    query: "key1=1&key2=2"
    }
    */
    var urlReg = /^(https?):\/\/([\w-\.]+\.[a-z]{2,6})\/([\w-\.]*)\?([\w-=&]*)/g
    urlReg.exec("http://www.qq.com/index.html?key1=1&key2=2")
    //["http://www.qq.com/index.html?key1=1&key2=2", "http", "www.qq.com", "index.html", "key1=1&key2=2"]
文章作者: webaifei
文章链接: http://yoursite.com/2017/11/09/reg2/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 个人博客