Python 正则学习


正则表达式:

    普通字符:字母,字符

    元字符:^ $ * + ? {} [] \ | ()

    

    []  常用来制定一个字符集

        元字符在字符集中不起作用

        ^ 补集匹配不再区间范围内的字符

        

    ^   匹配行首

        如果设置MULTILINE标志,他只是匹配字符串的开始

        在MULTILINE模式里,它也可以直接匹配字符串中的每个换行。

        

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

    

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

        也可以用于取消多有的元字符

        \d 匹配任何十进制数;[0-9]

        \D 匹配任何非数字字符;[^0-9]

        \s 匹配任何空白字符;[\t\n\r\f\v]

        \S 匹配任何非空白字符;[^\t\r\n\f\v]

        \w 匹配任何字母数字字符;[a-zA-Z0-9_]

        \W 匹配任何非字母数字字符;[^a-zA-Z0-9_]

        

    (重复)

        正则表达式的第一功能就是能够匹配不定成的字符集;

        另就是你可以指定正则表达式的一部分的重复次数

        

    *

        指定一个字符可以被匹配零次或者多次

        匹配引擎会试着从夫尽可能多的次数,不超过整数界定范围,20亿

    +

        表示匹配一次或多次,匹配至少出现一次

            

    ?   

        匹配一次或者零次,你可以认为他用于表示某事物是可选的

        加在后面,最小匹配模式

    {m,n}

        其中mn是十进制整数,表示至少有m个重复,最多有n个重复

        忽略m会认为下边界是0,忽略n的结果将是上边界为无群大(小于20亿)

        {0,}等同于*,{1,}等同于+,{0,1}等同于?

        

        

在python中使用正则表达式:

        在python中使用需要导入import re

        **.findall()

        -re模块提供了一个正则表达式的引擎的接口,可以让你的REstring编译成对象并用他们来进行匹配

        

        .compile() 

        .findall()  

        .match() 决定RE是否在字符串刚开始的位置匹配

        .search() 扫描字符串,找到RE匹配的位置

        .finditer() 返回迭代器

        

        

        

        

        

        

        

        

        

        


你可能感兴趣的:(python,正则学习)