Python:正则表达式-3

原文来自FishC,本文是个人学习笔记。

模块级别的函数

使用正则表达式也并非一定要创建模式对象,然后调用它的匹配方法。re模块中同时还提供了一些全局函数,如match,search,findall,sub等。这些函数的第一个参数是正则表达式字符串,其它参数同与同名的方法一样,返回值也一样。

如果正则表达式的使用频率比较高,建议使用上一回中所说的模式对象,如果只是偶尔使用,就使用全局函数就行了。

编译标志

(感觉怎么这么复杂啊)编译标志可以让我们修正正则表达式的工作方式。在re模块下,编译标志有两个名字:完整名和简写。如下所示(前面是完整名,后面是简写):

    ASCII,A                    使得转义符如\w,\b,\s,\d只能匹配ASCII字符,不匹配完整的Unicode字符;

    DOTALL,S                使得.匹配任何字符,包括换行符;如不使用,将匹配除换行符外的所有字符;

    IGNORECASE,I        匹配时候不区分大小写的

    LOCALE,L                支持当前的语言(区域)设置;使\w,\W,\b,\B依赖当前语言环境,而不是Unicode数据库;

    MULTILINE,M         多行匹配,影响^,$;通常^只匹配字符串的开头,$匹配字符串的结尾;当此标志被设置时,^不仅匹                                      配字符串的开头,也匹配每行的开头。同样,$匹配字符串的结尾和行尾;

    VERBOSE,X             启用详细的正则表达式:正则表达式可以写得更好看,更有条理;空格会被忽略(除出现在字符类中和                                     使用反斜杠转义的空格);容许正则表达式中使用注释。



猜你喜欢

转载自blog.csdn.net/huan_126/article/details/80217692