代码如下所示:
import re #必须导入内置的正则表达式re模块str='<html><p1><b>zhangsan</b></p1></html>' #设置字符串为html3个标签以及标签内部内容,并赋值给strpattern1=re.compile(r'<(?P<name1>\w+)><(?P<name2>\w+)><(?P<name3>\w+)>(.+)</(?P=name3)></(?P=name2)></(?P=name1)>')#上面这行是设置html3个标签以及标签内部内容的正则表达式匹配规则result1=re.match(pattern1,str) #代表从头开始在字符串str中按照匹配规则pattern1进行匹配,并将匹配结果赋值给result1print(\"大众result1:\公众,result1) #打印匹配的结果result1的值print(\"大众result1.span():\公众,result1.span()) #打印匹配的结果result1所在的起始位置和结束位置print(\"大众result1.group():\"大众,result1.group()) #按照分组原则打印匹配的结果result1的分组值
代码运行结果如下:
result1: <re.Match object; span=(0, 37), match='<html><p1><b>zhangsan</b></p1></html>'>
result1.span(): (0, 37)
result1.group(): <html><p1><b>zhangsan</b></p1></html>
图片示例如下: