Python学习笔记(4)--正则表达式内置属性和分组的使用
来源:互联网 发布:java程序员怎么接私活 编辑:程序博客网 时间:2024/04/28 09:40
内置属性和分组的重要性不言而喻,直接步入正题吧。
1 正则表达式的内置属性:为匹配添加其他的匹配方法,使使用更加方便。
(1)re.I 忽略大小写。eg:
不使用re.I 时候:
import re #导入re模块s1 = 'nihao's2 = 'nihao Nihao NIhao NIHAO'<span style="color:#663333;">s3 = re.findall(s1,s2)</span>print(s3)打印结果是:['nihao']
使用re.I时:
import re #导入re模块s1 = 'nihao's2 = 'nihao Nihao NIhao NIHAO's3 = re.findall(s1,s2,re.I)print(s3)打印的结果是:['nihao', 'Nihao', 'NIhao', 'NIHAO']
(2)re.s 使.(点)匹配所有字符
import re #导入re模块s1 = 'ni.ao's2 = 'nihao ni\nao NI\tao NIHAO's3 = re.findall(s1,s2,re.S)print(s3)打印结果是:['nihao', 'ni\nao']
(3)re.M 呆匹配内容多行匹配
re.X 正则表达式是多行
2 正则表达式中利用()(括号)分组,可以将相关数据做整体且内部可以操作,其次findall()函数优先返回分组数据。
分组用法最典型的例子是邮箱匹配,邮箱最后可能是.com .cn .org .edu.cn 我们可以这样写
import re #导入re模块s1 = '\w+@\w+(\.com|\.com\.cn|\.cn|edu.cn)'s2 = 'nibai@baidu.com's3 = re.findall(s1,s2)print(s3)打印结果是:['.com'] 有分组时,findall()返回的是分组的数据,多用于网络爬虫。
此时我们可以用match()进行匹配:
import re #导入re模块s1 = '\w+@\w+(\.com|\.com\.cn|\.cn|edu.cn)'s2 = 'nibai@baidu.com's3 = re.match(s1,s2)if s3: print(s3.group())else: print('Nothing')打印的结果为:nibai@baidu.com
0 0
- Python学习笔记(4)--正则表达式内置属性和分组的使用
- 正则表达式内置属性及分组
- 正则表达式(4)之内置属性
- Python 正则表达式(分组)
- python正则表达式——分组的使用
- python里使用正则表达式的分组命名方式
- python的内置正则表达式学习与理解 1
- JS:正则表达式学习笔记(七) - 分组
- python正则表达式分组
- python的正则表达式学习笔记
- 基于python的正则表达式学习笔记
- [Python]正则表达式(...)分组的扩展示例
- python正则表达式系列(3)——正则内置属性
- python正则表达式系列(4)——分组和后向引用
- python学习笔记(五)正则表达式的基本语法和re模块API
- Python学习笔记(4):正则表达式
- python学习笔记(四)正则表达式
- python学习笔记二(正则表达式)
- iOS项目iCloud及CloudKit Dashboard运用
- pdo
- 动态设置margin
- oracle 数据库语句简记
- AngularJS模态框
- Python学习笔记(4)--正则表达式内置属性和分组的使用
- 日常笔记
- Linux中的设备文件与设备号
- sigsuspend 函数使用 及与 pause 区别
- 计算机学习的一些书籍推荐
- http协议
- 原型模式
- 数据加密技术之MD5加密
- Linux内核能够识别的设备,对应源码中