import re
# 匹配两个字符中间的所有字符
a = '<p>life is short, i use python<a/>i love it<p>'
r = re.search('<p>(.*)<a/>(.*)<p>', a)
# python中正则匹配,如果不加(),默认是一个分组,group()中的参数,如果是0,默认是所有组,即返回整个字符串
# 如果是要访问自定义的组的元素,则需要从1开始
print(r.group(0)) # <p>life is short, i use python<a/>i love it<p>
print(r.group(1)) # life is short, i use python
print(r.group(2)) # i love it
# 用一个元组来返回所有组中的内容
print(r.group(0, 1, 2))
# ('<p>life is short, i use python<a/>i love it<p>', 'life is short, i use python', 'i love it')
# 返回所有元组的信息,不包括第0组
print(r.groups()) # ('life is short, i use python', 'i love it')
# 另一种匹配方式:使用findall()
b = re.findall('<p>(.*)<a/>(.*)<p>', a)
print(b) # [('life is short, i use python', 'i love it')]