pattern = '<a href=\"(.*?)\" title=\"(.*?)\" target="_blank"><img src=\"(.*?)\" alt=\"(.*?)\" /><b>.*?</b></a>' 我要用这个表达式取一个文本名为html 里很多这种的,然后添加到表中,并打印表,怎么搞
时间: 2023-08-28 08:06:58 浏览: 152
你可以使用Python的正则表达式模块`re`来提取符合特定模式的文本,并将结果添加到表中。下面是一个示例代码:
```python
import re
pattern = '<a href="(.*?)" title="(.*?)" target="_blank"><img src="(.*?)" alt="(.*?)" /><b>.*?</b></a>'
html = '''
<a href="url1" title="title1" target="_blank"><img src="image1.jpg" alt="alt1" /><b>text1</b></a>
<a href="url2" title="title2" target="_blank"><img src="image2.jpg" alt="alt2" /><b>text2</b></a>
<a href="url3" title="title3" target="_blank"><img src="image3.jpg" alt="alt3" /><b>text3</b></a>
'''
results = re.findall(pattern, html)
table = []
for result in results:
table.append(list(result))
for row in table:
print(row)
```
在上面的代码中,首先定义了要匹配的正则表达式模式。然后,将HTML文本存储在`html`变量中(这里只是示例,你需要将其替换为你的实际HTML文本)。
接下来,使用`re.findall()`函数来提取符合模式的文本,并将结果存储在`results`列表中。
然后,创建一个空的表`table`,遍历`results`列表中的每个结果,将其转换为列表形式并添加到表中。
最后,使用循环打印表中的每一行。
你可以根据你的实际需求进行修改和调整。希望这可以帮助到你!
阅读全文
相关推荐


