正则表达式匹配html超链接、图片、多媒体标签
时间: 2023-12-22 11:03:49 浏览: 105
可以使用以下正则表达式来匹配HTML超链接:
```html
<a\s+(?:[^>]*?\s+)?href=(["'])(.*?)\1
```
这个正则表达式匹配`<a>`标签,并且捕获`href`属性的值。可以使用类似以下的代码来提取所有匹配的链接:
```python
import re
html = '<a href="https://www.example.com">Example</a><a href="https://www.google.com">Google</a>'
links = re.findall(r'<a\s+(?:[^>]*?\s+)?href=(["\'])(.*?)\1', html)
for link in links:
print(link[1])
```
这个代码将输出两个链接:
```
https://www.example.com
https://www.google.com
```
同样,可以使用以下正则表达式来匹配HTML图片标签:
```html
<img\s+(?:[^>]*?\s+)?src=(["'])(.*?)\1
```
这个正则表达式匹配`<img>`标签,并且捕获`src`属性的值。可以使用类似以下的代码来提取所有匹配的图片链接:
```python
import re
html = '<img src="https://www.example.com/image.jpg"><img src="https://www.google.com/logo.png">'
images = re.findall(r'<img\s+(?:[^>]*?\s+)?src=(["\'])(.*?)\1', html)
for image in images:
print(image[1])
```
这个代码将输出两个图片链接:
```
https://www.example.com/image.jpg
https://www.google.com/logo.png
```
对于多媒体标签,可以使用以下正则表达式来匹配`<video>`和`<audio>`标签:
```html
<(?:video|audio)\s+(?:[^>]*?\s+)?src=(["'])(.*?)\1
```
这个正则表达式匹配`<video>`和`<audio>`标签,并且捕获`src`属性的值。同样,可以使用类似以上例子的代码来提取所有匹配的多媒体链接。
阅读全文