java去掉富文本格式传入后端字符串中的<p> 及</p>标签,而不影响img标签
时间: 2023-12-17 18:04:47 浏览: 170
Java8 将List<Integer> 转换成以逗号分割的String字符串
您可以使用正则表达式来去掉 `<p>` 和 `</p>` 标签,并保留 `<img>` 标签。以下是一个示例代码:
```java
String input = "这是一段包含<p>富文本格式</p>和<img src=\"example.jpg\">的字符串";
String output = input.replaceAll("(?i)<p[^>]*>(.*?)</p>", "$1")
.replaceAll("(?i)<(?!img)[^>]*>", "")
.replaceAll("(?i)</(?!img)[^>]*>", "");
System.out.println(output);
```
这段代码中,第一行定义了输入字符串 `input`,其中包含了 `<p>` 和 `</p>` 标签以及一个 `<img>` 标签。第二行使用 `replaceAll()` 方法将所有 `<p>` 和 `</p>` 标签去掉,保留标签内的内容。第三行使用 `replaceAll()` 方法将除了 `<img>` 标签以外的所有标签去掉。第四行使用 `replaceAll()` 方法将除了 `<img>` 标签以外的所有结束标签去掉。最终输出的字符串 `output` 是去掉了 `<p>` 和 `</p>` 标签,但保留了 `<img>` 标签的字符串。
阅读全文