• 生活就是这样,需要去灌溉!
    • 谢谢您的关注,欢迎您的注册与写作!
    • 循环往复,生生不息,或许这就是生命的意义吧!生命是插曲的产品吧!
    • 古今多少事,都付笑言中!
    • 风住尘香花已尽,日晚倦梳头。物是人非事事休,欲语泪先流。
    • 闻说双溪春尚好,也拟泛轻舟,只恐双溪舴艋舟,载不动许多愁。

Python3中正则表达式使用方法

Linux 柳叶扉鸿 7年前 (2018-05-21) 7649次浏览 已收录 扫描二维码
内容目录

修饰符

正则表达式可以包含一些可选标志修饰符来控制匹配的模式。修饰符被指定为一个可选的标志。
我们用一个实例先来感受一下:

Python3中正则表达式使用方法
和上面的例子相仿,我们在字符串中加了个换行符,正则表达式也是一样的来匹配其中的数字,看一下运行结果:
Python3中正则表达式使用方法
运行直接报错,也就是说正则表达式没有匹配到这个字符串,返回结果为 None,而我们又调用了 group()方法所以导致 AttributeError。

那我们加了一个换行符为什么就匹配不到了呢?是因为.匹配的是除换行符之外的任意字符,当遇到换行符时,.*?就不能匹配了,所以导致匹配失败。

那么在这里我们只需要加一个修饰符 re.S,即可修正这个错误。

Python3中正则表达式使用方法
在 match()方法的第三个参数传入 re.S,它的作用是使.匹配包括换行符在内的所有字符。

运行结果:

1234567

这个 re.S 在网页匹配中会经常用到,因为 HTML 节点经常会有换行,加上它我们就可以匹配节点与节点之间的换行了。

另外还有一些修饰符,在必要的情况下也可以使用:


柳叶扉鸿 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Python3中正则表达式使用方法
相关文章
喜欢 (1)