zoukankan      html  css  js  c++  java
  • 正则表达式

    正则表达式:

      字符组:

        [0-9]  数字:0123456789

        [a-z]  英文:a到z(小写)

        [A-Z]  英文:A到Z(大写)

        [a-zA-Z]  括号里可以写多个

      元字符:

        .    匹配除换行符以外的任意字符

        w  匹配字母或数字或下划线

        s   匹配任意的空白符

        d   匹配数字

               匹配一个换行符

             匹配一个制表符

           匹配以(一个单词)的结尾(g,以g结尾的)

        ^    匹配字符串的开始

        $    匹配字符串的结尾

        W    匹配非字母或数字或下划线

        D   匹配非数字

        S   匹配非空白符

        a|b  匹配字符a或字符b,优先匹配|左边的

        ()     匹配括号内的表达式,也表示一个组

        [...]  匹配字符组中的字符

        [^...]   匹配除了字符组中字符的所有字符

      量词:

        *       重复零次或更多次

        +       重复一次或更多次

        ?      重复零次或一次

        {n}      重复n次

        {n,}     重复n次或更多次

        {n,m}  重复n次到m次,默认贪婪多次

      .^$:

        我.   匹配所有“我.”的字符

        ^我.  只从开关匹配“我.”

        我.$  只匹配结尾的"我.$"

      *+?{}:

        我.?     只匹配我后面零个或一个任意字符

        我.*    匹配我后面零个或多个任意字符,匹配我所有所有东西直到结束

        我.+    匹配我后面任意1个或多个字符,匹配到结束 

        我.{1,2}  匹配我后面任意一到两个字符,有两个必须匹配两个。

        我.*?  惰性匹配,只匹配我,我后面都不要

      字符集 [] [^]:

        我[爱你]  匹配“我”字后面“爱你”的字符任意次数

        我[^你]*  匹配“我”字后面任意次数不是“你”的字符

        [d]    匹配任意一个数字

          [d]+     匹配任意多个数字

      分组()与或| [^]:

        ^[1-9]d{13,16}[0-9x]$      匹配[1-9]d{13,16} 13到16次,[0-9x]  0-9或x结尾

        ^[1-9]d{14}(d{2}[0-9x])?$     匹配[1-9]d{14},d{2}[0-9] 分成一组,约束他们出现1次或零次

        ^([1-9]d{16}[0-9x]|[1-9]d{14})$  匹配 [1-9]d{16}[0-9x]如果没有匹配上就匹配[1-9]d{14}

      转义符 :

        d  只能匹配数字,不能匹配d

        \d  匹配d ,代表转义

        “\\d”  匹配\d

        r“\d”  r‘d',让整个字符串不转义(有引号)

      贪婪匹配:

        <.*>   默认为贪婪匹配,会尽量多的找。

        <.*?>  加上? 贪婪匹配转为惰性匹配,会尽量取短的。

      惰性匹配:

        *?  重复任意次,但尽可能少重复

        +?  重复1次或更多次,但尽可能少重复

        {n,m} 重复n到m次,但尽可能少重复

        {n,}  重复n次以上,但尽可能少重复

      .*?x : 取前面任意长度的字符,直到一个x出现

  • 相关阅读:
    记账本程序三
    记账本程序二
    记账本程序一
    <<人月神话>>笔记1
    库存管理系统
    Java实现数据库
    第九周作业
    四则运算总结
    java异常处理
    第十周学习进度报告
  • 原文地址:https://www.cnblogs.com/tsboy/p/8252272.html
Copyright © 2011-2022 走看看