`
fackyou200
  • 浏览: 309491 次
  • 性别: Icon_minigender_1
  • 来自: 山西太原
社区版块
存档分类
最新评论

java 过滤 html

    博客分类:
  • java
 
阅读更多
public static String Html2Text(String inputString) {
		if (inputString == null || "".equals(inputString))
			return "";
		String htmlStr = inputString; // 含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_html1;
		java.util.regex.Matcher m_html1;

		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_html1 = "<[^>]+";
			p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
			m_script = p_script.matcher(htmlStr);
			htmlStr = m_script.replaceAll(""); // 过滤script标签

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

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

			p_html1 = Pattern.compile(regEx_html1, Pattern.CASE_INSENSITIVE);
			m_html1 = p_html1.matcher(htmlStr);
			htmlStr = m_html1.replaceAll(""); // 过滤html标签

			if (htmlStr != null) {
				htmlStr = htmlStr.replaceAll("\\s*|\t|\r|\n", "");
				// 去除空格
				htmlStr = htmlStr.replaceAll("&nbsp;", "");
			}
			textStr = htmlStr;

		} catch (Exception e) {
			System.err.println("Html2Text: " + e.getMessage());
		}
		return textStr;// 返回文本字符串
	}

 

分享到:
评论

相关推荐

    java过滤html代码

    在Java编程中,"java过滤html代码"是一个常见的需求,主要目的是为了安全考虑,比如防止XSS(跨站脚本攻击)或者为了提取纯文本内容。这个任务可以通过使用正则表达式来实现,正如描述中提到的那样。下面我们将详细...

    java过滤html标签

    可以实现java过滤html标签、过滤指定标签等等

    java过滤html,css,js标签工具类(UnHtmlScript)

    `UnHtmlScript`工具类就是为了解决这个问题而设计的,它能够帮助开发者有效地过滤掉HTML、CSS和JavaScript标签,提取出纯文本内容。 HTML标签是用来构建网页结构的,例如`&lt;p&gt;`用于段落,`&lt;a&gt;`用于链接等。CSS则是...

    java 读取html过滤标签

    为了便于复用,可以创建一个工具类,封装读取和过滤HTML的功能。例如: ```java public class HtmlFilter { public static String filterHtmlTags(String html, String... tagsToFilter) { // 使用Jsoup或其他...

    Java 中 过滤Html标签

    "Java 中过滤Html标签" Java 中过滤Html标签是指在Java语言中删除或替换HTML标签的过程。这种技术广泛应用于Web开发中,例如删除恶意代码、防止XSS攻击、显示纯文本等。 在Java中,过滤Html标签的方法有多种,包括...

    java正则表达式过滤html标签

    ### Java正则表达式过滤HTML标签 在处理文本数据时,经常会遇到需要从HTML文档中提取纯文本内容的需求。为了去除HTML标记并保留有意义的文字部分,可以利用Java中的正则表达式来实现这一功能。本篇文章将详细介绍...

    Java过滤器,字符过滤,标签过滤

    首先,让我们了解一下Java过滤器的基础知识。在Java Servlet规范中,Filter接口定义了过滤器的行为。一个过滤器可以通过实现`doFilter()`方法来拦截请求和响应,并对其进行处理。通过在web.xml配置文件中定义过滤器...

    java使用正则表达式过滤html标签

    标签“java过滤html标签 java正则过滤html标签 java过滤所有html标签”则指明了文章的具体技术范畴和读者可以利用的关键字。 在内容部分,文章提供了一个名为`HtmlRegexpUtil`的工具类,该类是专门用于处理HTML标签...

    java过滤非html后缀的文件

    总结一下,Java过滤非HTML后缀的文件是通过实现Servlet Filter接口并配置在Web应用的`web.xml`中实现的。这种方式可以有效保护静态资源,避免未授权的访问,提升Web应用的安全性。通过这样的拦截机制,我们可以对...

    java的xxsProtect过滤xss

    - **HTML标签检测**: 过滤器会检查输入字符串中是否包含HTML标签,如`&lt;script&gt;`, `&lt;iframe&gt;`, `&lt;img&gt;`等,这些标签通常被用于XSS攻击。如果发现这些标签,过滤器会采取相应的措施,如删除、替换或转义,以确保它们...

    java过滤器的使用

    Java过滤器(Filter)是Java Web开发中的一个重要概念,它主要应用于Servlet容器中,如Tomcat、Jetty等。过滤器允许我们在请求被发送到目标资源(如Servlet、JSP页面)之前或之后进行预处理和后处理。在这个场景中,...

    java HTML过滤器,用于去除XSS漏洞隐患

    java HTML过滤器,用于去除XSS漏洞隐患java HTML过滤器,用于去除XSS漏洞隐患java HTML过滤器,用于去除XSS漏洞隐患java HTML过滤器,用于去除XSS漏洞隐患java HTML过滤器,用于去除XSS漏洞隐患java HTML过滤器,...

    java过滤html标签获取纯文本信息的实例

    从给定文件描述中,我们可以提取到知识点:使用Java语言,利用正则表达式来过滤HTML标签,提取纯文本信息。下面是详细的知识点解析: 知识点一:正则表达式的基础概念 正则表达式是一种文本模式,包括普通字符...

    java 请求参数过滤拦截

    在Java开发中,请求参数过滤拦截是一个至关重要的环节,它涉及到系统的安全性、稳定性和数据的正确性。这里的“java请求参数过滤拦截”主要是指在接口接收到用户输入的数据时,通过过滤器(Filter)对参数进行检查,...

    java字符过滤器,过滤器

    Java过滤器就是为了解决这些问题,确保数据在处理过程中保持正确的编码格式。 在Java中,字符乱码通常是由于字符编码不一致导致的。例如,一个以UTF-8编码的文件被误认为是GBK编码来读取,就会出现乱码现象。为了...

    java中文过滤器

    在Java Web开发中,"java中文过滤器"是一种常见的技术,用于处理B/S(Browser/Server)架构下中文字符编码的问题。在B/S系统中,数据通常通过HTTP协议在网络间传输,而HTTP协议默认并不规定字符编码,这可能导致在...

    六个有用的java过滤器

    ### 六个有用的Java过滤器知识点详解 在Java Web开发中,过滤器(Filter)是一种非常重要的技术,它能够对用户的请求和响应进行预处理或后处理,从而实现各种功能需求,例如设置缓存策略、登录验证、字符编码转换等...

    Java正则表达式过滤html标签1[参考].pdf

    Java正则表达式过滤html标签 Java正则表达式是一种强大的文本处理工具,可以用来过滤、提取和替换文本中的特定模式。在HTML标记处理中,正则表达式可以用来过滤、提取和替换HTML标签。 本文将介绍如何使用Java正则...

Global site tag (gtag.js) - Google Analytics