求一正则能去除HTML标签但又支持部份允许的标签!!

subnet 2009-06-11 05:27:41
public static String stripTags(String content) {

if (content == null)
return null;

content = content.replaceAll("<(?!/?(?i)(img|p|br|font)).*?>", "");
return content;
}

我的这个函数支持img p br font标签,但会把类似这样的也去除:
1.<123>
2.<abc>
3.<测试>

怎样既支持上面的标签,又能较准确的去除html代码?

我觉得应该是:满足以<开头并且紧跟着字母同时又排除img p等标签的需要被去除。

不如这样的正则应该如何写?多谢
...全文
48 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
bolink5 2009-06-14
  • 打赏
  • 举报
回复
正则表达式的问题

这帖子收藏了,期待有人能把此问题解决了。
学习下~
zhouzongjiu 2009-06-14
  • 打赏
  • 举报
回复
UP
livs_ly_2010 2009-06-13
  • 打赏
  • 举报
回复
回帖是一种美德!每天回帖即可获得 10 分可用分! ! - -!
luckygino 2009-06-13
  • 打赏
  • 举报
回复
期待解答。。
holsten32 2009-06-13
  • 打赏
  • 举报
回复
micsolaris 2009-06-13
  • 打赏
  • 举报
回复
你现在要做到的是去除<img|p|br|font>等标签,还是说要去除
1.<123>
2. <abc>
3. <测试>
等标签阿?
我还真的不理解的要的结果是什么?要的结果是把(?!)换成(?=)的结果吗?
subnet 2009-06-11
  • 打赏
  • 举报
回复


public class test {

public static void main(String[] args) {

String content;

content = "<测试>image_url</font>";

System.out.println(removeHtml(content));
System.out.println(stripTags(content));
}

public static String stripTags(String content) {

if (content == null)
return null;

content = content.replaceAll("<(?!/?(?i)(img|p|br|font)).*?>", "");
return content;
}
}

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧