java 过滤html标签方法

public static String Hmtl2Text(String content){


		if(content==null||"".equals.(content)){
			return "";
		}


	 //过滤html标签
           String textStr = "";
           java.util.regex.Pattern p_script;
           java.util.regex.Matcher m_script;
           java.util.regex.Pattern p_style;
           java.util.regex.Matcher m_style;
           java.util.regex.Pattern p_html;
           java.util.regex.Matcher m_html;
           java.util.regex.Pattern p_cont1;
           java.util.regex.Matcher m_cont1;
           java.util.regex.Pattern p_cont2;
           java.util.regex.Matcher m_cont2;
           //正则表达式
            try {
                String regEx_script = "<[\\s]*?script[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?script[\\s]*?>"; // 定义script的正则表达式{或<script[^>]*?>[\\s\\S]*?<\\/script>
                
                String regEx_style = "<[\\s]*?style[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?style[\\s]*?>"; // 定义style的正则表达式{或<style[^>]*?>[\\s\\S]*?<\\/style>
                
                String regEx_html = "<[^>]+>"; // 定义HTML标签的正则表达式


                String regEx_cont1 = "[\\d+\\s*`~!@#$%^&*\\(\\)\\+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘:”“’_]"; // 定义HTML标签的正则表达式


                String regEx_cont2 = "[\\w[^\\W]*]"; // 定义HTML标签的正则表达式[a-zA-Z](过滤英文)


                p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
                m_script = p_script.matcher(content);
                content = m_script.replaceAll(""); // 过滤script标签


                p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);
                m_style = p_style.matcher(content);
                content = m_style.replaceAll(""); // 过滤style标签


                p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);
                m_html = p_html.matcher(content);
                content = m_html.replaceAll(""); // 过滤html标签


                p_cont1 = Pattern.compile(regEx_cont1, Pattern.CASE_INSENSITIVE);
                m_cont1 = p_cont1.matcher(content);
                content = m_cont1.replaceAll(""); // 过滤其它标签


                p_cont2 = Pattern.compile(regEx_cont2, Pattern.CASE_INSENSITIVE);
                m_cont2 = p_cont2.matcher(content);
                content = m_cont2.replaceAll(""); // 过滤html标签
		
		textStr=content;
		
		}cache(Exception e){
			System.out.println("错误:"+e.getMessage());
		}
		retunr textStr;
	}


你可能感兴趣的:(java 过滤html标签方法)