1.内容简介:
处理文本和数据是计算机的绝活,赋予这项绝活的功能就是编程语言。对于大量的数据,程序通常需要进行数据匹配,搜索,替换...等一系列操作。在python中,可以用正则表达式来批量处理数据。在python中,用re模块来支持正则表达式,re模块是python的标准库。
2. 正则表达式的概念:
可以这样理解,所谓正则表达式,是一些有字符和特殊符号组成的字符串,用于按照规则匹配多个字符串。
正则表达式为文本模式匹配,搜索,替换,抽取等功能提供了基础。
在python中,用re模块来支持正则表达式,re模块是python的标准库。
3. 正则表达式举例1:match,span,group的使用
re.match的功能:
尝试从字符串的“起始位置”匹配一个模式,如果不是起始位置匹配成功的话,match()就返回None。
程序举例:从hello python中进行匹配,即使用match
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import re
print(re.match('hello', 'hello python')) # 在起始位置匹配
print(re.match('python', 'hello python')) # 不在起始位置匹配
运行结果:
<re.Match object; span=(0, 5), match='hello'>
None
我们可以用span函数,取出需要的数据的起始位置,例如:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import re
res_str = re.match('hello', 'hello python')
span_str = res_str.span()
print(span_str)
print(re.match('python', 'hello python')) # 不在起始位置匹配
运行结果:
(0, 5)
None
如果想取出匹配到的数据,则可以用gr