import re# string = "this is a love1ly girl lovel1y"# pattern = re.compile(r"lovely")# ret = pattern.search(string)# print(ret.group())# # group()是返回匹配的整个表达式的字符串string = "额呵呵<span><div>床前明月光,疑是地上霜</div></span>"pattern = re.compile(r"<(\w+)><(\w+).*</(\2)></(\1)>")ret = pattern.search(string)print(ret.group())# 指返回匹配的整个表达式的第一个子模式的字符串# 显示结果:<span><div>床前明月光,疑是地上霜</div></span>print(ret.group(1))# group(1)表示匹配的第一个子模式的字符串,其他的同理# 显示结果:spanprint(ret.group(2))# 显示结果:divstring = "lakdsk<span><div>醉卧沙场君莫笑</div></span>呵呵呵<a><div>古来征战几人回</div></a>哈哈哈"pattern = re.compile(r"<(\w+)><(\w+)>.*</\2></\1>")rer = pattern.search(string)print(rer)#显示结果是一个对象
#显示结果:<_sre.SRE_Match object; span=(6, 37), match='<span><div>醉卧沙场君莫笑</div></span>'>print(rer.group())#显示结果:<span><div>醉卧沙场君莫笑</div></span>pattern1 = re.compile(r"(<(\w+)><(\w+)>.*</\3></\2>)")re1 =pattern1.findall(string)print(re1)#显示结果:[('<span><div>醉卧沙场君莫笑</div></span>', 'span', 'div'), ('<a><div>古来征战几人回</div></a>', 'a', 'div')]#注意:使用findall进行匹配时,有几个子模式,就在列表中显示几个子模式
转载于:https://www.cnblogs.com/kuangkuangduangduang/p/10373095.html
相关资源:深入分析正则表达式的子模式
转载请注明原文地址: https://win8.8miu.com/read-9115.html