java清除字符串中的html标签


/**
	 * 去掉字符中的html标签
	 * @param htmlStr
	 * @return
	 */
	public static String StripHTML(String str){
		//如果有双引号将其先转成单引号
		String htmlStr = str.replaceAll("\"", "'");
		String regEx_script = "]*?>[\\s\\S]*?<\\/script>"; // 定义script的正则表达式
		String regEx_style = "]*?>[\\s\\S]*?<\\/style>"; // 定义style的正则表达式
		String regEx_html = "<[^>]+>"; // 定义HTML标签的正则表达式

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

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

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

		return htmlStr.trim(); //返回文本字符串 
	}
	public static void main(String[] args) {
//		System.out.println(StringUtil.replaceBlank("\n\t\tXXX/THA/CHN/MYS/IDN/IND\n\t"));
		/*String s = "11";
		System.out.println(Integer.parseInt(s,16));*/
		String htmlStr = "


faq添加测试1faq添加测试1faq添加测试1faq添加测试1


"; System.out.println(StripHTML(htmlStr)); }

你可能感兴趣的:(java)