正则表达式

一. RE模块

  就其本质而言,正则表达式(或 RE)是一种小型的、高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现。正则表达式模式被编译成一系列的字节码,然后由用 C 编写的匹配引擎执行。

字符匹配(普通字符,元字符):

1 普通字符:大多数字符和字母都会和自身匹配
              >>> re.findall('alvin','yuanaleSxalexwupeiqi')
                      ['alvin'] 

2 元字符:. ^ $ * + ? { } [ ] | ( )             ---------------------》》》掌握正则表达式的核心

  正则表达式中的11个元字符:

    .    匹配任何一个除换行符以外的符号

    ^  匹配字符串的开始位置

    $  匹配字符串的末尾位置

  重复:

    *  重复【0-无穷】

    +  重复【1-无穷】

    ?  【0,1】

    {m,n}  【m,n】

  [ ]字符集:取其中的某一个元素

    注意:* +  . 等元字符都是普通符号,- ^ 有特殊意义, - <范围>    ^ <取反>

  ( ) 分组

    在findall里面优先把分组里的内容显示出来

    命名分组的格式   ?P<>

    ?:    取消优先级

  |   或

     转义符

    1.后面加一个元字符使其变成普通符号

    2.将一些普通符号变成特殊符号 比如:d<代表任意一个数字>         w < 代表一个字母数字_ >

    python解释器解释------------>re模块再解义

    r-------->原生字符串,里面的东西不需要转义         

原文地址:https://www.cnblogs.com/junxiansheng/p/7081190.html