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

    元字符:

    1.[ ]

        常用来指定一个字符集:[abc]; [a-z]; [0-9]

        元字符在字符集中不起作用:[akm$]

        补集匹配不在区间范围内的字符:[^5] ; [^abc]


    2.^

        匹配行首。除非设置MULTILINE标志,它只是匹配字符串的开始。在MULTILINE模式里,它可以直接匹配字符串中的每个换行。


    3.$

        匹配行尾,行尾被定义为要么是字符串尾,要么是一个换行字符后面的任何位置。


    4.

        反斜杠后面可以加不同的字符以表示不同的特殊意义

        也可以用于取消所有的元字符:[] 或 \

        d 匹配任何-十进制数;它相当于[0-9]

        D匹配任何非数字字符,它相当于[^0-9]

        s匹配任何空白字符,它相当于[ fv]

        S匹配任何非空白字符,它相当于[^ fv]

        w匹配任何字母数字字符,它相当于[a-zA-Z0-9_]

        W匹配任何非字母数字字符,它相当于[^a-zA-Z0-9_]

    5.重复

        正则表达式的第一功能是能够匹配不定长的字符集,另一个功能是你可以指定正则表达式的一部分重复次数;重复次数放在大括号里面

        c{8}表示重复8次c;   d{8}表示8位数字

    6.*

        指定前一个字符可以被匹配0次或多次,而不是只有一次。匹配引擎会试着重复尽可能多的次数(不超过整数界定范围20亿)

    7.+

        表示匹配一次或更多次,

        *和+之间的不同:*匹配0或更多次,+匹配一或更多次

    8.?

        匹配一次或零次:你可以认为它用于标志某事物是可选的

        ?家长重复(6,7)后面可以做最小匹配,a*?表示匹配0次a,a+?表示匹配一次a
    9.{m,n}

        其中m和n都是十进制整数,该限制符的意思是至少有m个重复,至多有n个重复。a{1,3}b

        忽略m会认为下边界是0,忽略n认为上边界是无穷大(实际上是20亿)

        {0,}等同于*; {1,}等同于+; {0,1}等同于?;如果可以的话最好用*   +   或?


  • 相关阅读:
    Java实现 蓝桥杯VIP 算法训练 黑色星期五
    Java实现 蓝桥杯VIP 算法训练 比赛安排
    Java实现 蓝桥杯VIP 算法训练 比赛安排
    Java实现 蓝桥杯VIP 算法训练 斜率计算
    Java实现 蓝桥杯VIP 算法训练 斜率计算
    Java实现 蓝桥杯VIP 算法训练 整数平均值
    Java实现 蓝桥杯VIP 算法训练 整数平均值
    控件动态产生器(使用RegisterClasses提前进行注册)
    Delphi编写自定义控件以及接口的使用(做了一个TpgDbEdit)
    Log4delphi使用心得
  • 原文地址:https://www.cnblogs.com/riskyer/p/3253491.html
Copyright © 2011-2022 走看看