代码案例:

正则表达式中表示匹配行的开头,默认模式下它只能匹配字符串的开头;而在多行模式下,它还可以匹配 换行符
n后面的字符 。注意:正则语法中匹配行开头、
A匹配字符串开头,单行模式下它两效果一致,多行模式下A不能识别n 。5. VERBOSE语法:re.VERBOSE 或简写为 re.X
作用:详细模式,可以在正则表达式中加注解!
代码案例:

默认模式下并不能识别正则表达式中的注释,而详细模式是可以识别的 。
当一个正则表达式十分复杂的时候,详细模式或许能为你提供另一种注释方式,但它不应该成为炫技的手段,建议谨慎考虑后使用!
6.LOCALE语法:re.LOCALE 或简写为 re.L
作用:由当前语言区域决定
w,W,b,B和大小写敏感匹配,这个标记只能对byte样式有效 。这个标记官方已经不推荐使用,因为语言区域机制很不可靠,它一次只能处理一个 “习惯”,而且只对8位字节有效 。注意:由于这个标记官方已经不推荐使用,而且猪哥也没使用过,所以就不给出实际的案例!
7.UNICODE语法:re.UNICODE 或简写为 re.U
作用:与 ASCII 模式类似,匹配unicode编码支持的字符,但是 Python 3 默认字符串已经是Unicode,所以有点冗余 。
8. DEBUG语法:re.DEBUG
作用:显示编译时的debug信息 。
代码案例:

虽然debug模式下确实会打印编译信息,但猪哥并不理解这是什么语言 以及表达的含义,希望了解的朋友能不吝赐教 。
9.TEMPLATE语法:re.TEMPLATE 或简写为 re.T
作用:猪哥也没搞懂TEMPLATE的具体用处,源码注释中写着:disable backtracking(禁用回溯),有了解的同学可以留言告知!

10. 常量总结9个常量中,前5个(IGNORECASE、ASCII、DOTALL、MULTILINE、VERBOSE)有用处,两个(LOCALE、UNICODE)官方不建议使用、两个(TEMPLATE、DEBUG)试验性功能,不能依赖 。
常量在re常用函数中都可以使用,查看源码可得知 。

常量可叠加使用,因为常量值都是2的幂次方值,所以是可以叠加使用的,叠加时请使用
|符号,请勿使用+符号!
最后来一张思维导图总结一下re模块中的常量吧,需要高清图或者xmind文件的同学可在文章末尾获取 。


re模块函数re模块有12个函数,猪哥将以功能分类来讲解;这样更具有比较性,同时也方便记忆 。
1.查找一个匹配项查找并返回一个匹配项的函数有3个:search、match、fullmatch,他们的区别分别是:
- search: 查找任意位置的匹配项
- match: 必须从字符串开头匹配
- fullmatch: 整个字符串与正则完全匹配
案例1:

案例1中search函数是在字符串中任意位置匹配,只要有符合正则表达式的字符串就匹配成功,其实有两个匹配项,但search函数值返回一个 。
推荐阅读
- switch语句中case后面的表达式可以是什么
- Python循环结构中else用法 else的用法与位置结尾
- python自动化测试面试题 python测试代码怎么写
- python正则表达式使用实例 正则表达式测试工具有哪些
- python打造自动抢购/秒杀脚本 天天秒淘宝秒杀助手软件靠谱吗
- php采集安装教程 Python数据采集流程
- 怎么安装python python下载安装
- windows10配置python环境变量 windows配置python环境变量
- 测试环境搭建 教你搭建python开发环境
- python用什么软件编程好 常用python编程软件推荐
