Java如何过滤掉HTML标签呢?
java过滤html标记 java删除html标签
/**
* 删除input字符串中的html格式
*
* @param input
* @param length
* 显示的字符的个数
* @return
*/
public static String splitAndFilterString(String input, int length) {
if (input == null || input.trim().equals("")) {
return "";
}
// 去掉所有html元素,
String str = input.replaceAll("\\&[a-zA-Z]{1,10};", "").replaceAll(
"<[^>]*>", "");
str = str.replaceAll("[(/>)<]", "").trim();
str=SystemHWUtil.deleteAllCRLF(str);//delete all CRLF
int len = str.length();
if (length==SystemHWUtil.NEGATIVE_ONE|| len <= length) {
return str;
} else {
str = str.substring(0, length);
str += "......";
}
return str;
}
/**
* 返回纯文本,去掉html的所有标签,并且去掉空行
*
* @param input
* @return
*/
public static String splitAndFilterString(String input) {
if (input == null || input.trim().equals("")) {
return "";
}
// 去掉所有html元素,
String str = input.replaceAll("\\&[a-zA-Z]{1,10};", "").replaceAll(
"<[^>]*>", "");
str = str.replaceAll("[(/>)<]", "");
return SystemHWUtil.deleteCRLF(str);
}
应用:
paperNews.setSplitAndFilterString(SystemHWUtil.splitAndFilterString(paperNews.getContent(), 120/*TODO */));
String content=paperNews.getContent();
paperNews.setContent(SystemHWUtil.splitAndFilterString(content, DictionaryParam.getInt("news_settings", "content_max")));