zoukankan      html  css  js  c++  java
  • 正则的用处和语法

    正则:就是处理字符串的一个规则

    用处:

      1.匹配:字符串是否匹配规则,返回值是布尔值(test)

      2.捕获:捕获字符串中符合规则的部分,返回值是null或数组(exec)

    组成:元字符和修饰符

    正则的构建:字面量(/d/)和实例创建(new RegExp("\d")),两者有区别,区别另说,常用字面量方式

    元字符://之间的具有意义的字符,分为两组

    1.具有特殊意义的元字符

    • - 转义字符
    • ^ - 以某个元字符开头,不占位置
    • $ - 以某个元字符结尾,不占位置
    • . - 除了 意外的任意一个字符
    • - 换行符
    • () - 分组,把一个大正则本身划分成几个小的正则
    • x|y - x或者y中的一个
    • [xyz] - xyz中的任意一个
    • [^xyz] - 除了xyz以外的任意字符
    • [a-zA-Z0-8] - a-z,A-Z,0-8中的任意一个字符
    • d - 0-9的任意一个字符
    • D - 除0-9以外的任意字符
    •  - 匹配边界符
    • w - 字母,数字,下划线的任意一个字符,等同于[0-9a-zA-Z_]
    • s - 表示空白字符,空格,制表符,换页符的任意一个

    2.代表出现次数量词的元字符

    • * - 大于等于0次
    • + - 大于等于1次
    • ? -  0或1次
    • {n} - n次
    • {n,} - 大于等于n次
    • {n,m} - 大于等于n且小于等于m次

    3.修饰符

    img

    ignoreCase:忽略大小写

    multiLine:多行也可以匹配

    global:全字符串范围内

    如/d/g.exec("abcd"),不加g只会找一次,加了g会把符合条件的都找出来

    个人觉得要注意的地方:

    1.中括号里的基本所有的字符都表示自身的意思,特殊的是 ^和-,

    ^后面有内容的时候表示非,否则表示其自己

    -前后有内容的时候表示范围,否则表示其自己

    2. abcd|efgh,首先|不能加空格,不然会匹配空格,然后,|左右两边可以看成一个整体,出现某一侧即可,也就是上面的匹配 abcd 或 efgh ,而不是|临近的de,还有个常遇到的/^66|77$/,还是一分两半,要不以66开头,要不77结尾

  • 相关阅读:
    Top 10 Product Manager Skills To Boost Your Resume In 2021
    大数据知识梳理
    B端产品如何设计权限系统?
    华三盒式交换机MAC、ARP、Route性能表项参数查询
    中了传说中的挖矿病毒
    SqlServer 2019 事务日志传送
    docker中生成的pdf中文是方框的解决方案
    The Live Editor is unable to run in the current system configuration
    2021 面试题大纲
    五分钟搞定Docker安装ElasticSearch
  • 原文地址:https://www.cnblogs.com/2han/p/6365601.html
Copyright © 2011-2022 走看看