一、字符匹配
1、元字符:完整列表:. ^ $ * + ? { } [ ] | ( )
元字符 描述
.点 匹配除换行符外任意一个字符
x|y 匹配 x 或 y。例如,'z|food' 能匹配 "z" 或 "food"。'(z|f)ood' 则匹配 "zood" 或 "food"。
[^a-z] 负值字符范围。匹配任何不在指定范围内的任意字符。例如,'[^a-z]' 可以匹配任何不在 'a' 到 'z' 范围内的任意字符。
[a-z] 字符范围。匹配指定范围内的任意字符。例如,'[a-z]' 可以匹配 'a' 到 'z' 范围内的任意小写字母字符
举例:
元字符:| >>> import re >>> re.search(r'Fish(C|D)','FishC') <re.Match object; span=(0, 5), match='FishC'> >>> re.search(r'Fish(C|D)','FishD') <re.Match object; span=(0, 5), match='FishD'> >>> re.search(r'Fish(C|D)','FishE') >>> 匹配FishC FishD可以成功,匹配FishE匹配不成功
元字符:^ >>> re.search(r'^FishC','I love FishC.com') >>> re.search(r'^FishC','FishC.com') <re.Match object; span=(0, 5), match='FishC'> >>>
^ 脱字符,匹配字符串的开始位置
第一条是匹配不到FishC的,因为需要匹配的FishC不在开始位置
第二条匹配到了FishC,因为需要匹配的FishC在开始位
元字符:$ >>> re.search(r"FishC$","FishC.com!") >>> re.search(r"FishC","I love FishC") <re.Match object; span=(7, 12), match='FishC'> >>> 匹配的是字符串的结束为止