re

2019-05-23  本文已影响0人  左右_84f0

re 代表的是 正则表达式

正则表达式可以包含特殊和普通字符

特殊字符:用来通配

普通字符:用来简单的匹配自己

模块

            re.compile(r'')  将正则封装成对象

            compile() 将自己封装成一个对象,留给后面的search、match使用

            后面参数添加  re.IGNORECASE  执行不区分大小写的匹配

            re.DEBUG  显示调试信息编译的正则表达式

              re.search  扫描字符串  寻找第一个由正则表达式产生的位置返回

                re.split(r'',)  将正则作为匹配的分隔符

                *  re.findall    从左到右匹配  从左到右依次返回匹配的字符串

                *  re.match()  从开始位置匹配  失败返回None    需要group()

                group()  返回match对象一个或者多个数组

                groups()  返回match匹配的一个元组对象 

语法:

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

            ^ 默认匹配字符串的起始位置

            $ 默认从字符串的末尾位置向前匹配

            * 匹配前面出现的正则表达式零次或多次      非贪婪

            + 匹配前面出现的正则表达式  至少一次      贪婪

            ? 匹配前面出现的正则表达式  零次or一次 非贪婪

            {3} 精准匹配前面出现的字符3次

            {3,5} 匹配前面出现的字符  3次到5次

            \ 对任一特殊字符进行转义

            [a,m,k] {

                        用来匹配一个字符合集,

                        可以这样写 [A-Z],[0-9],[a-z]

                        在集合内部,特殊字符将失去特殊的意义

                        可以通过转义是特殊字符存在意义[\w]

                }

                A|B A或者是B

                (    ) 显示在圆括号内的正则匹配内容

                (?<=e)\w 在以匹配hello为例中,这个正则表达式代表的是匹配l

                \d 匹配数字

                \D 匹配所有非数字

                \s 匹配所有换行,空格

                \S 匹配所有非换行 空格

                \w 匹配所有字符  不包含标点符号换行等

                \W 匹配所有非字符

                \Z 放在末位  标识末位  在我看来等同$

上一篇下一篇

猜你喜欢

热点阅读