Python正则表达式中的re.S
来源:互联网 发布:做施工组织设计的软件 编辑:程序博客网 时间:2024/05/21 07:11
在Python的正则表达式中,有一个参数为re.S。它表示“.”(不包含外侧双引号,下同)的作用扩展到整个字符串,包括“\n”。看如下代码:
import rea = '''asdfsafhellopass: 234455 worldafdsf '''b = re.findall('hello(.*?)world',a)c = re.findall('hello(.*?)world',a,re.S)print 'b is ' , bprint 'c is ' , c
运行结果如下:
b is []c is ['pass:\n\t234455\n\t']
正则表达式中,“.”的作用是匹配除“\n”以外的任何字符,也就是说,它是在一行中进行匹配。这里的“行”是以“\n”进行区分的。a字符串有每行的末尾有一个“\n”,不过它不可见。
如果不使用re.S参数,则只在每一行内进行匹配,如果一行没有,就换下一行重新开始,不会跨行。而使用re.S参数以后,正则表达式会将这个字符串作为一个整体,将“\n”当做一个普通的字符加入到这个字符串中,在整体中进行匹配。
在re.py库的介绍中有以下语句:
"." Matches any character except a newline.
S DOTALL "." matches any character at all, including the newline.
这里特别感谢评论中叫做Style的朋友指出了我的错误。
0 0
- Python正则表达式中的re.S
- Python正则表达式中的re.S
- Python中的正则表达式-re模块
- Python中的re模块和正则表达式
- Python中的re(正则表达式)
- python中的re(正则表达式)
- python中的re模块(正则表达式)
- python中的正则表达式(re模块)
- python中的正则表达式(re模块)
- 【学习笔记】Python中的正则表达式re
- Python 正则表达式 re
- python-re【正则表达式】
- python re 正则表达式
- Python re正则表达式
- python 正则表达式 re
- Python正则表达式(re)
- re 正则表达式 Python
- python正则表达式(re)
- 修改Coney主题之侧边栏移位
- IBM SuperVessel Ubuntu 下连接节点
- iOS真机调试教程
- 什么是SELINUX?
- 杨辉三角
- Python正则表达式中的re.S
- iOS滤镜简单demo
- Ubuntu Vim配置
- 屏幕发射射线并检测碰撞
- 对一个罗马数字与阿拉伯数字转换算法的分析
- iOS开发的一些奇巧淫技2
- 有理想的程序员必须知道的15件事
- 图像YUV格式采样格式
- 全文检索之lucene的优化篇--创建索引库