1. 匹配开头和结尾
示例1:^
需求:匹配以数字开头的数据
import re# 匹配以数字开头的数据match_obj = re.match("^\d.*", "1hello_world!")print(match_obj)if match_obj:# 获取匹配结果print(match_obj.group())else:print("匹配失败")match_obj2 = re.match("^\d.*", "hello_world!")print(match_obj2)if match_obj2:# 获取匹配结果print(match_obj2.group())else:print("匹配失败")
运行结果:
示例2:$
需求: 匹配以数字结尾的数据
import re# 匹配以数字结尾的数据match_obj = re.match(".*\d$", "hello_world5")print(match_obj)if match_obj:# 获取匹配结果print(match_obj.group())else:print("匹配失败")match_obj2 = re.match(".*\d$", "hello_world")print(match_obj2)if match_obj2:# 获取匹配结果print(match_obj2.group())else:print("匹配失败")
运行结果:
示例3:^ 和 $
需求: 匹配以数字开头,中间内容不管,以数字结尾
import rematch_obj = re.match("^\d.*\d$", "4hello_world4")print(match_obj)if match_obj:# 获取匹配结果print(match_obj.group())else:print("匹配失败")
运行结果:
2.除了指定字符以外都匹配
[^指定字符]: 表示除了指定字符都匹配
需求: 第一个字符除了aeiou的字符都匹配
import rematch_obj = re.match("[^abc]", "ILoveChina")if match_obj:# 获取匹配结果print(match_obj.group())else:print("匹配失败")match_obj2 = re.match("[^abc]", "aaa")if match_obj2:# 获取匹配结果print(match_obj2.group())else:print("匹配失败")match_obj3 = re.match("[^abc].*", "China")if match_obj3:# 获取匹配结果print(match_obj3.group())else:print("匹配失败")match_obj4 = re.match("[^abc]*", "China")if match_obj4:# 获取匹配结果print(match_obj4.group())else:print("匹配失败")
执行结果: