zoukankan      html  css  js  c++  java
  • 正则常用匹配

    // 转驼峰

    function toCamelCase(str,pattern) {
      // replace第二个参数为一个函数时,在此场景中,
      // 第一个参数为正则匹配出来的内容, 依次是 -c -r -c,
      // 第二个参数是分组中的内容, 也就是 c r c
       return str.replace(pattern,function(all,letter){
          return letter.toUpperCase();
       });
    }
    var pattern = /-([a-z])/ig;
    console.log(toCamelCase('font-size', pattern)); // fontSize

    // 邮箱

    // ?:非捕获分组,分组中的内容不会捕获输出

    var str1 = 'alex@tahoo.com.cn';
    var str2 = 'alex_1@tahoo.com.cn';
    var str3 = 'alex_1.sdasdas.asdasd.com@tahoo.com.asdasd.cn';
    var pattern = /(?:w+.)*w+@(?:w+.)+[a-z]/i;
    console.log(str1.match(pattern));    // alex@tahoo.com.c
    console.log(str2.match(pattern));    // alex_1@tahoo.com.c
    console.log(str3.match(pattern));    // alex_1.sdasdas.asdasd.com@tahoo.com.asdasd.c

    // 密码:    6-16位      不能用空白字符      区分大小写

    var str2 = '13071562801';
    var pattern2 = /^S{6,16}$/;
    console.log(pattern2.exec(str2));

    // 昵称:    中、英文、数字以及下划线                2-18位

    var str1 = '_ltog';
    var pattern1 = /^[u4e00-u9fa5w]{2,18}$/;
    console.log(pattern1.exec(str1));

    // QQ          全是数字       首位不能为0       最少五位         目前最多11位

    var str = '35246072333333333';
    // var pattern = /^[1-9]d{4,}$/;
    var pattern = /^[1-9]d{4,10}/;
    console.log(pattern.exec(str)); // 3524607233

    // 手机号

    var str = '13071562801';
    var pattern = /^1[3|5|8][0-9]{9}$/;
    console.log(str.match(pattern)); // 13071562801
  • 相关阅读:
    正则表达式元字符完整列表及行为说明
    吐槽满肚子的负能量
    又一个月了
    关于SVNcommit时强制写注释方法
    SVN源码服务器搭建
    一个 quick set 驱动费了我一下午
    spring自动注入是单例还是多例?单例如何注入多例?
    web.xml 中的listener、 filter、servlet 加载顺序及其详解
    springmvc+hibernate
    oracle 表 库实例 空间
  • 原文地址:https://www.cnblogs.com/ltog/p/14689378.html
Copyright © 2011-2022 走看看