首页 > Java技术, 个人随笔 > java过滤掉富文本中除特定html标签外的其他标签
201901月19

java过滤掉富文本中除特定html标签外的其他标签

java过滤掉富文本中除特定html标签外的其他标签,排除的标签可以根据自己需求修改。

方法一

public static String getCleanContent(String content) {
	// String regEx = "(?!<(img|p|span).*?>)<.*?>";
	String regEx = "(?!<(img).*?>)<.*?>";
	Pattern p_html = Pattern.compile(regEx, Pattern.CASE_INSENSITIVE);
	Matcher m_html = p_html.matcher(content);
	String str = m_html.replaceAll("");
	str = str.replace("&nbsp;", "");
	return str.trim();// 返回文本字符串
}

方法二

需要下载jakarta-oro.jar包

import org.apache.oro.text.perl.*;
public static String getCleanContent(String html) {
	StringBuffer buffer = new StringBuffer();
	Perl5Util preg = new Perl5Util();
	preg.substitute(buffer, "s/<script[^>]*?>.*?<\\/script>//gmi", html);
	// 过滤script标签
	html = buffer.toString();
	buffer.setLength(0);
	preg.substitute(buffer, "s#<[/]*?(?!p|img|span)[^<>]*?>##gmi", html);
	// ( p/img/span ...标签之外,都删除)
	html = buffer.toString();
	buffer.setLength(0);
	return html;
}

文章作者: iitshare
本文地址:http://www.iitshare.com/java-filter-out-rich-text-html-tags.html
版权所有 © 转载时必须以链接形式注明作者和原始出处!

更多
本文目前尚无任何评论.

发表评论