面试题答案
一键面试import re
html = "<p>这是一个段落</p> <a href='https://example.com'>链接</a>"
pattern = re.compile(r'<.*?>(.*?)</.*?>')
results = pattern.findall(html)
print(results)
上述代码中:
- 导入
re
模块,它是Python中用于处理正则表达式的标准库。 - 定义了要处理的HTML字符串
html
。 - 使用
re.compile
方法编译正则表达式,r'<.*?>(.*?)</.*?>'
这个正则表达式的含义是:<.*?>
:匹配开始标签,.*?
表示非贪婪匹配,尽可能少地匹配字符直到遇到>
。(.*?)
:这部分是捕获组,用于提取开始标签和结束标签之间的文本,同样使用非贪婪匹配。</.*?>
:匹配结束标签。
- 使用
pattern.findall
方法在html
字符串中查找所有匹配项,并将结果存储在results
列表中,最后打印出results
。