java 正则 去除htm 除 img p iframe video audio 标签以外其他标签
时间: 2023-10-12 15:20:19 浏览: 304
Java 中 过滤Html标签
5星 · 资源好评率100%
可以使用以下正则表达式来去除除 img、p、iframe、video、audio 标签以外的所有 HTML 标签:
```
String htmlContent = "<html><body><p>Hello World!</p><div><img src='image.jpg'></div><a href='#'>Link</a><script>alert('Hello');</script></body></html>";
String cleanedHtmlContent = htmlContent.replaceAll("(?i)<(?!img|p|iframe|video|audio)[^>]*>", "");
System.out.println(cleanedHtmlContent);
```
解释一下上面的正则表达式:
- `(?i)` 表示忽略大小写。
- `<` 表示匹配左括号。
- `(?!img|p|iframe|video|audio)` 表示后面不是 `img`、`p`、`iframe`、`video`、`audio` 标签。
- `[^>]*` 表示匹配不是右括号的任意字符。
- `>` 表示匹配右括号。
上面的代码会输出以下内容:
```
<p>Hello World!</p><div><img src='image.jpg'></div>
```
阅读全文