Python正则表达式中的re.S的作用
2018-01-15 22:39
323 查看
在Python的正则表达式中,有一个参数为re.S。它表示“.”(不包含外侧双引号,下同)的作用扩展到整个字符串,包括“\n”。看如下代码:
import re a = '''asdfhellopass: 123 worldaf ''' b = re.findall('hello(.*?)world',a) c = re.findall('hello(.*?)world',a,re.S) print 'b is ' , b print 'c is ' , c
运行结果如下:
b is [] c is ['pass:\n\t123\n\t']
正则表达式中,“.”的作用是匹配除“\n”以外的任何字符,也就是说,它是在一行中进行匹配。这里的“行”是以“\n”进行区分的。a字符串有每行的末尾有一个“\n”,不过它不可见。
如果不使用re.S参数,则只在每一行内进行匹配,如果一行没有,就换下一行重新开始,不会跨行。而使用re.S参数以后,正则表达式会将这个字符串作为一个整体,将“\n”当做一个普通的字符加入到这个字符串中,在整体中进行匹配。
相关文章推荐
- Python正则表达式中的re.S的作用详解
- Python之re(正则表达式)模块小结
- [Python标准库]re——正则表达式[六]
- 比较详细Python正则表达式操作指南(re使用)[10]
- Python基础学习之re正则表达式
- python中正则表达式以及re模块的使用
- Python3 re(正则表达式)
- Python中re(正则表达式)模块学习
- [Python笔记]第九篇:re正则表达式
- Python中re(正则表达式)模块学习
- Python Re正则表达式笔记
- Python模块学习 ---- re 正则表达式
- python中的正则表达式(re模块)
- Python中re(正则表达式)模块学习
- Python正则表达式模块(re模块)
- python中的正则表达式(re模块)三
- Python中re(正则表达式)模块详解
- python re 正则表达式实例2
- [Python标准库]re——正则表达式[二]
- Python::re 模块 -- 在Python中使用正则表达式