美文网首页
常用正则表达式总结

常用正则表达式总结

作者: suesoft | 来源:发表于2020-03-29 22:20 被阅读0次

    正则表达式在线校验地址: https://regexper.com/

    目录:

    • 一、用法与释义
    • 二、常用正则表达式

    一、用法与释义

    1、 用法
    <!--用法-->
    reg.test(str)
    
    // for example
    let regName = /^([a-zA-Z]|[\u4E00-\u9FA5]){1,8}$/
    regName .test('测试xm') // true
    regName .test('测试12') // false
    
    2、释义
    • 根据正则表达式语法释义
      /^([a-zA-Z]|[\u4E00-\u9FA5]){1,8}$/为例
    各符号代表如下:
    ^  以...开始    
    \s 指空格(html转义里的空格)
    + 连续
    | 或
    

    即 以 英文字母(不区分大小写)[a-zA-Z] 或者| 汉字[\u4E00-\u9FA5] 开始,1到8位{1,8}。

    1.png

    one of 代表有两条路可以走通,一条是英文不区分大小写a-z和A-Z,另一条是汉字\u4E00-\u9FA5。即英文字母或汉字
    at most 7 times 代表最多再循环7次,加上最初的一次,共8次。
    合起来就是 英文字母与汉字,不得多于8位。

    深度了解了构成原理以后根据项目需求就可以灵活变通啦。

    二、常用正则表达式

    • 中/英文名,不多于8位
      /^([a-zA-Z]|[\u4E00-\u9FA5]){1,8}$/
    • 验证手机号
      /^1[356789]\d{9}$/
    • 检验图片格式
      /^(image\/jpeg|image\/png)$/i
    • 消除字符串首尾两端的空格
      /^\s+|\s+$/g
    • 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
      /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
    • 银行卡是16位或者19位的正则表达式
      /^(\d{16}|\d{19})$/
    • 同时验证手机号和座机号
      /^((0\d{2,3}-\d{7,8})|(1[356789]\d{9}))$/

    相关文章

      网友评论

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

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