Python正则表达式中flags参数的实例详解


Posted in Python onApril 01, 2022

flags参数

re.I
    IGNORECASE
    忽略字母大小写

re.L
    LOCALE
    影响 “w, “W, “b, 和 “B,这取决于当前的本地化设置。

re.M
    MULTILINE
    使用本标志后,‘^’和‘$’匹配行首和行尾时,会增加换行符之前和之后的位置。

re.S
    DOTALL
    使 “.” 特殊字符完全匹配任何字符,包括换行;没有这个标志, “.” 匹配除了换行符外的任何字符。

re.X
    VERBOSE
    当该标志被指定时,在 RE 字符串中的空白符被忽略,除非该空白符在字符类中或在反斜杠之后。
    它也可以允许你将注释写入 RE,这些注释会被引擎忽略;
    注释用 “#”号 来标识,不过该符号不能在字符串或反斜杠之后。

忽略大小写

import re
text = '我爱Python我爱python'
pat1 = 'p'
# search
r1 = re.findall(pattern=pat1, string=text, flags=re.I)
print(r1)

[‘P’, ‘p’]

多行模式

import re
text = '我爱数学\n我爱Python\n我爱python'
pat1 = '^我'
# search
r1 = re.findall(pattern=pat1, string=text)
r2 = re.findall(pattern=pat1, string=text, flags=re.M)
print(r1)
print(r2)

[‘我’]
[‘我’, ‘我’, ‘我’]

匹配任何字符

import re
text = '''
我爱Python
我爱pandas
'''
pat1 = '.我'
# search
r1 = re.findall(pattern=pat1, string=text, flags=re.S)
print(r1)
r2 = re.findall(pattern=pat1, string=text)
print(r2)

[’\n我’, ‘\n我’]
[]

补充:正则表达式中的flags

MULTILINE,多行模式, 改变 ^ 和 $ 的行为

In [63]: s
Out[63]: 'first line\nsecond line\nthird line'
 
In [64]: pattern=re.compile(r'^\w+')
 
In [65]: re.findall(pattern,s)
Out[65]: ['first']
 
In [67]: pattern=re.compile(r'^\w+',re.M)
 
In [68]: re.findall(pattern,s)
Out[68]: ['first', 'second', 'third']

re.S   DOTALL,此模式下 '.' 的匹配不受限制,可匹配任何字符,包括换行符,也就是默认是不能匹配换行符

In [62]: s = '''first line
    ...: second line
    ...: third line'''
 
In [71]: regex=re.compile('.+',re.S)
 
In [73]: regex.findall(s)
Out[73]: ['first line\nsecond line\nthird line']
 
In [74]: regex=re.compile('.+')
 
In [75]: regex.findall(s)
Out[75]: ['first line', 'second line', 'third line']

re.X    VERBOSE,冗余模式, 此模式忽略正则表达式中的空白和#号的注释

email_regex = re.compile("[\w+\.]+@[a-zA-Z\d]+\.(com|cn)")
 
email_regex = re.compile("""[\w+\.]+  # 匹配@符前的部分
                            @  # @符
                            [a-zA-Z\d]+  # 邮箱类别
                            \.(com|cn)   # 邮箱后缀  """, re.X)

总结

到此这篇关于Python正则表达式中flags参数的文章就介绍到这了,更多相关Python正则表达式flags参数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
基于Linux系统中python matplotlib画图的中文显示问题的解决方法
Jun 15 Python
python 3.6 tkinter+urllib+json实现火车车次信息查询功能
Dec 20 Python
ubuntu16.04制作vim和python3的开发环境
Sep 23 Python
Python 3.8中实现functools.cached_property功能
May 29 Python
django框架防止XSS注入的方法分析
Jun 21 Python
Django--权限Permissions的例子
Aug 28 Python
python循环输出三角形图案的例子
Nov 22 Python
Python实现微信好友的数据分析
Dec 16 Python
Python获取、格式化当前时间日期的方法
Feb 10 Python
python实现逢七拍腿小游戏的思路详解
May 26 Python
Python实现LR1文法的完整实例代码
Oct 25 Python
python 标准库原理与用法详解之os.path篇
Oct 24 Python
Python+Tkinter制作专属图形化界面
Pyhton爬虫知识之正则表达式详解
python 离散点图画法的实现
Python学习之迭代器详解
Python实战之大鱼吃小鱼游戏的实现
OpenCV实现常见的四种图像几何变换
关于Python使用turtle库画任意图的问题
Apr 01 #Python
You might like
WIN98下Apache1.3.14+PHP4.0.4的安装
2006/10/09 PHP
php cc攻击代码与防范方法
2012/10/18 PHP
zend framework配置操作数据库实例分析
2012/12/06 PHP
setcookie中Cannot modify header information-headers already sent by错误的解决方法详解
2013/05/08 PHP
jQuery中even选择器的定义和用法
2014/12/23 Javascript
JS实现图片剪裁并预览效果
2016/08/12 Javascript
javascript实现无法关闭的弹框
2016/11/27 Javascript
Agularjs妙用双向数据绑定实现手风琴效果
2017/05/26 Javascript
详解webpack编译多页面vue项目的配置问题
2017/12/11 Javascript
vue 全选与反选的实现方法(无Bug 新手看过来)
2018/02/09 Javascript
jQuery+Datatables实现表格批量删除功能【推荐】
2018/10/24 jQuery
jQuery对底部导航进行跳转并高亮显示的实例代码
2019/04/23 jQuery
使用 vue 实现灭霸打响指英雄消失的效果附demo
2019/05/06 Javascript
Python random模块(获取随机数)常用方法和使用例子
2014/05/13 Python
Python 专题一 函数的基础知识
2017/03/16 Python
Python基于回溯法子集树模板解决0-1背包问题实例
2017/09/02 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
2017/10/11 Python
Django migrations 默认目录修改的方法教程
2018/09/28 Python
python生成以及打开json、csv和txt文件的实例
2018/11/16 Python
python写入数据到csv或xlsx文件的3种方法
2019/08/23 Python
Django使用uwsgi部署时的配置以及django日志文件的处理方法
2019/08/30 Python
Python 经典算法100及解析(小结)
2019/09/13 Python
解决django model修改添加字段报错的问题
2019/11/18 Python
python的reverse函数翻转结果为None的问题
2020/05/11 Python
html5 横向滑动导航栏的方法示例
2020/05/08 HTML / CSS
中国电子产品外贸网站:MiniIntheBox
2017/02/06 全球购物
Lookfantastic德国官网:英国知名美妆购物网站
2017/06/11 全球购物
屈臣氏官方旗舰店:亚洲享负盛名的保健及美妆零售商
2019/03/15 全球购物
旅游与酒店管理的自我评价分享
2013/11/03 职场文书
销售会计工作职责
2013/12/02 职场文书
员工拓展培训方案
2014/02/15 职场文书
中学生家长评语大全
2014/04/16 职场文书
意向协议书范本
2014/04/23 职场文书
毕业纪念册寄语大全
2015/02/26 职场文书
个人年终总结开头
2015/03/06 职场文书
2015年法院工作总结范文
2015/04/28 职场文书