python过滤掉</p>\n<p style="text-indent: 2em;">等代码
时间: 2023-11-01 18:16:12 浏览: 165
你可以使用正则表达式来过滤掉这些代码,示例如下:
```python
import re
text = '这是一段包含</p>\n<p style="text-indent: 2em;">的文本'
filtered_text = re.sub(r'(<\/\w+>)|(<\w+\s+style=[^&]+>)', '', text)
print(filtered_text)
```
输出结果:
```
这是一段包含的文本
```
其中,正则表达式 `(<\/\w+>)|(<\w+\s+style=[^&]+>)` 匹配两种情况:
- `</\w+>` 匹配类似 `</p>` 的代码;
- `<\w+\s+style=[^&]+>` 匹配类似 `<p style="text-indent: 2em;">` 的代码。
使用 `re.sub()` 函数将匹配到的代码替换为空字符串即可。
相关问题
python过滤掉</p>\n<p style="text-indent: 2em;"><p style="text-indent: 2em;">等html代码
可以使用正则表达式进行过滤:
```python
import re
html = '<p>这是一段文本</p>\n<p style="text-indent: 2em;">这是另一段文本,带有html样式</p>'
filtered_html = re.sub('<[^<]+?>', '', html)
print(filtered_html)
# 输出:这是一段文本\n这是另一段文本,带有html样式
```
这里使用了 `<[^<]+?>` 的正则表达式来匹配所有的html标签,并将其替换为空字符串。但是这种方法只能过滤掉标签,而无法过滤掉样式属性等其他html代码。如果需要更全面的过滤,可以使用第三方库 BeautifulSoup。
阅读全文