import re
# 判断变量名是否有效
names =["name","name1","name_","_name","1name"]for name in names:# ^匹配开头, $匹配结尾
r1 = re.match(r"^[a-zA-Z_][a-zA-Z0-9_]*$", name).group()print(r1)
匹配163邮箱
import re
# 匹配163邮箱地址
email =input("请输入邮箱地址:")try:
r1 = re.match(r"[a-zA-Z0-9_]{4,20}@163\.com$", email).group()print(r1)except:print("不符合要求")
匹配163或者126邮箱
import re
# 匹配163和126邮箱地址, |表示126或者163,需要括号括起来
r1 = re.match(r"[a-zA-Z0-9_]{4,20}@(163|126)\.com$","laowang@126.com")# 取出括号里面的数据
r = r1.group(1)print(r)if r1:print("%s符合要求"% r1.group())else:print("不符合要求")
re的高级用法
search的用法
import re
# match和search的区别:# match从头开始匹配, search不会从头开始匹配,只要有匹配的数据就可以
r1 = re.search(r"\d+","python666").group()print(r1)# 666