文章目录
一、正则表达式
1、正则表达式定义:
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
2、正则表达式的作用和特点:
给定一个正则表达式和另一个字符串,我们可以达到如下的目的:
- 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);
- 可以通过正则表达式,从字符串中获取我们想要的特定部分。
3、特点:
- 灵活性、逻辑性和功能性非常强
- 可以迅速地用极简单的方式达到字符串的复杂控制
- 对于刚接触的人,比较晦涩。
每一次的正则表达式编译都是非常昂贵的,所以一般是先写好放在外部
创建一个正则表达式的典型方法是通过使用方法(后面加".r"),这对字符串提供了隐式的转换方法。
正则表达式,相当于一个过滤器,满足要求的可以过去,不满足要求的留下。
1、python re模块:
1)match()
# .match() 从头开始匹配,第一个没匹配上就返回 None
import re
msg = '娜扎热巴戴斯佟丽娅'
result = re.match('佟丽娅', msg)
print(result)
>>>
None
msg = '佟丽娅娜扎热巴戴斯'
result = re.match('佟丽娅', msg)
print(result)
>>>
<re.Match object; span=(0, 3), match='佟丽娅'>
2)search()
# search() 可以返回匹配到的位置,且不受句首限制,匹配整个字符串
import re
msg = '娜扎热巴戴斯佟丽娅'
result = re.search('佟丽娅', msg)
print(result)
>>>
<re.Match object; span=(6, 9), match='佟丽娅'>
3)匹配后内容的获取 result.group()
print(result.group())
>>>
佟丽娅