有如下一段Html

<span>Hello</span>
<span>World</span>

如果里面的Hello不只是有字母,还包括数字、汉字等一系列字符时,我们会希望只用 . 来代表每个字符然后将Hello提取出来,但 . 又包括了,所以提取出来的会是:

Hello</span><span>World

下面这段可以解决这个问题:

# coding=utf-8

import re

html = "<span>Hello</span><span>World</span>"
regex=r'<span>(.+?)</span>'
data = re.findall(regex, html)
for d in data:
	print(d)

输出:

Hello
World

使用正则:(.+?)