/**
*应用场景:获取到一个网页,提取文本内容的时候就能够使用这个工具
* @param cleanType 1:清除js 2:清除style 3.清除html 4.清除空格和换行
* @param htmlStr 原html字符串
* @return 返回清理以后的字符串
*/
public static String doCleanHtml(String htmlStr,int cleanType){
//定义script的正则表达式
String regEx_script="
//定义style的正则表达式
String regEx_style="
//定义HTML标签的正则表达式
String regEx_html="<[^>]+>";
//定义空格回车换行符
String regEx_space = "\\s*|\t|\r|\n";//定义空格回车换行符
if(cleanType ==1){
Pattern p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
Matcher m_script = p_script.matcher(htmlStr);
htmlStr = m_script.replaceAll(""); // 过滤script标签
}else if(cleanType ==2){
Pattern p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);
Matcher m_style = p_style.matcher(htmlStr);
htmlStr = m_style.replaceAll(""); // 过滤style标签
}else if(cleanType ==3){
Pattern p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);
Matcher m_html = p_html.matcher(htmlStr);
htmlStr = m_html.replaceAll(""); // 过滤html标签
}else if(cleanType ==4){
Pattern p_space = Pattern.compile(regEx_space, Pattern.CASE_INSENSITIVE);
Matcher m_space = p_space.matcher(htmlStr);
htmlStr = m_space.replaceAll(""); // 过滤空格回车标签
}
return htmlStr.trim(); // 返回文本字符串
}