`

使用正则表达式过滤HTML中标签

 
阅读更多
package com.tan.code;

import java.util.regex.Pattern;

public class DeleteHtml {

	//去掉文本中的html标签
	
	public static class HtmlText {
		public static String Html2Text(String inputString) {
			String htmlStr = inputString;
			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标签

				textStr = htmlStr;

			} catch (Exception e) {
				System.err.println("Html2Text: " + e.getMessage());
			}

			return textStr;// 返回文本字符串
		}
	}
}

 

分享到:
评论

相关推荐

    java正则表达式过滤html标签

    java正则表达式过滤html标签是指使用java语言中的正则表达式来过滤html标签的操作。HtmlRegexpUtil这个工具类提供了多种过滤html标签的方法,包括过滤所有以"开头以"&gt;"结尾的标签、找出IMG标签、找出IMG标签的SRC...

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

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

    asp.net 正则表达式过滤所有html标签

    ### ASP.NET 中使用正则表达式过滤HTML标签的详细解析 在Web开发中,经常需要对用户输入的数据进行处理,特别是在展示用户提交的内容时,为了防止XSS攻击或确保页面的整洁度,去除HTML标签变得至关重要。本文将详细...

    PHP用正则表达式过滤超链接

    ### PHP使用正则表达式过滤超链接 在Web开发中,经常需要处理HTML文本,比如提取其中的超链接。PHP提供了强大的字符串处理功能,利用正则表达式可以非常方便地实现这一需求。本文将详细介绍如何使用PHP结合正则...

    asp.net利用正则在HTML中提取图片路径(asp.net正则表达式过滤出HTML代码中图片路径).txt

    ### ASP.NET 中使用正则表达式提取 HTML 代码内的图片路径 #### 背景介绍 在 Web 开发中,经常需要处理 HTML 文档或字符串,例如从网页中提取特定的信息,比如图片链接等。ASP.NET 是一种广泛使用的 Web 应用开发...

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

    标题“java使用正则表达式过滤html标签”意味着文章的主题是关于如何使用Java编程语言结合正则表达式来清除或处理HTML标签,这是在处理Web开发中经常会遇到的需求。描述中提到,文章将介绍这一技术,并希望读者通过...

    正则表达式 Java 判断字串是否合理

    对于手机号码的验证,文件中的`checkMobile`方法使用了较为简单的正则表达式: ```java "^[1][3,5]+\\d{9}" ``` 此表达式假设手机号码以1开头,接着是3或5,后面跟着9位数字。实际上,现代中国的手机号码前两位可能...

    正则表达式清除html标签

    本文将详细介绍如何利用正则表达式在.NET环境中清除HTML标签。 #### 核心概念:正则表达式与HTML标签 1. **正则表达式**:是一种强大的文本匹配工具,它允许开发者定义复杂的搜索模式来查找、替换或处理文本中的...

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

    在项目中遇到这样一个需求,需要将一段html转换为一般文本返回,万能的正则表达式来了。 正则表达式来拯救你,代码如下: public static string Html2Text(string htmlStr) { if (String.IsNullOrEmpty(htmlStr)) {...

    C#正则表达式集合C# 正则表达式 集合C# 正则表达式 集合C# 正则表达式 集合

    根据给定的信息,本文将详细解释C#中的正则表达式及其应用场景,特别是结合所提供的示例来阐述如何在C#程序设计中运用这些表达式。 ### C#与正则表达式 C#是一种广泛使用的面向对象编程语言,它支持丰富的功能,...

    js正则表达式限制文本框只能输入字母和汉字

    本篇文章将深入探讨如何使用JavaScript(简称JS)中的正则表达式来实现一个文本框仅能输入字母(包括大小写)和汉字的功能。 #### 1. 理解需求 题目所提及的需求是:创建一个HTML文本框,通过JavaScript控制其输入...

    正则表达式教程 常用正则表达式

    通过简单的字符组合,正则表达式可以灵活地匹配文本中的特定模式或规则。 #### 二、常用正则表达式实例解析 ##### 1. 匹配数字序列 - **表达式**: `^[0-9]*$` - **说明**: 匹配任何由0到9的数字组成的字符串。 - ...

    利用正则表达式批处理含链接内容文档

    故采用正则表达式的形式进行文档处理。 要读取文档内10w多条的数据,可按照3步走战略: 1.外层循环利用文件过滤器读取文件夹内所有符合条件的文件。 2.读取每一个筛选到的文件,利用正则表达式去除超链接符号。 3....

    javascript正则表达式表单验证大全

    以下是从标题、描述、标签以及部分内容中提取的关键知识点,详细解释了如何使用JavaScript正则表达式进行各种常见场景下的表单验证。 #### 用户名验证 正则表达式:`^[a-zA-Z][\w]{5,17}$` 该表达式确保用户名由...

    正则表达式练习文件(清洗)

    - **过滤HTML标签**:使用`&lt;[^&gt;]*&gt;`匹配HTML标签,便于获取纯文本内容。 - **处理CSS选择器**:虽然正则不推荐用于解析复杂HTML,但简单的CSS选择器可以通过正则完成。 5. **实践示例** - 文件中可能包含各种...

    常用的正则表达式.doc

    根据给定文件的信息,我们可以总结出一系列常用的正则表达式及其应用场景。正则表达式是一种强大的...通过这些正则表达式的使用,可以在实际开发中有效地提高数据处理的效率和准确性,确保程序运行的稳定性和安全性。

    正则表达式

    4. **属性提取**:在HTML标签中,属性提供了额外的信息。例如,`链接&lt;/a&gt;`中的`href`属性。使用正则表达式可以提取这些属性,如`href\s*=\s*"([^"]+)"`可匹配`href`属性的值。 5. **内容提取**:在HTML中,`&lt;tag&gt;...

Global site tag (gtag.js) - Google Analytics