package com.xz.cxzy.utils; import java.util.regex.Matcher; import java.util.regex.Pattern; public class HtmlUtil { private static final String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>"; // 定义script的正则表达式 private static final String regEx_style = "<style[^>]*?>[\\s\\S]*?<\\/style>"; // 定义style的正则表达式 private static final String regEx_html = "<[^>]+>"; // 定义HTML标签的正则表达式 private static final String regEx_space = "\\s*|\t|\r|\n";//定义空格回车换行符 /** * @param htmlStr * @return * 删除Html标签 */ public static String delHTMLTag(String htmlStr) { 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标签 Pattern p_space = Pattern.compile(regEx_space, Pattern.CASE_INSENSITIVE); Matcher m_space = p_space.matcher(htmlStr); htmlStr = m_space.replaceAll(""); // 过滤空格回车标签 return htmlStr.trim(); // 返回文本字符串 } public static String getTextFromHtml(String htmlStr){ htmlStr = delHTMLTag(htmlStr); htmlStr = htmlStr.replaceAll(" ", ""); htmlStr = htmlStr.substring(0, htmlStr.indexOf("。")+1); return htmlStr; } public static void main(String[] args) { String str = "<div style='text-align:center;'> 整治“四风” 清弊除垢<br/><span style='font-size:14px;'> </span><span style='font-size:18px;'>公司召开党的群众路线教育实践活动动员大会。</span><br/></div>"; System.out.println(getTextFromHtml(str)); } }
注:\n 回车(\u000a)
\t 水平制表符(\u0009)
\s 空格(\u0008)
\r 换行(\u000d)*/
相关推荐
### Java正则表达式过滤HTML标签 在处理文本数据时,经常会遇到需要从HTML文档中提取纯文本内容的需求。为了去除HTML标记并保留有意义的文字部分,可以利用Java中的正则表达式来实现这一功能。本篇文章将详细介绍...
总结来说,使用Java和正则表达式去除HTML中的A标签是一种常见的文本处理任务,但需要注意的是,这种方法对于简单的情况有效,对于复杂的HTML结构可能不够健壮。对于更复杂的需求,推荐使用专门的HTML解析库。
本文将详细介绍如何使用Java的正则表达式来删除HTML标签,以便提取网页内容的核心部分。 首先,我们需要理解HTML标签的一般结构。HTML标签通常以`开始,`>`结束,并可能包含属性。例如,`<script>`和`<style>`标签...
需要注意的是,正则表达式处理HTML有一定的局限性,特别是当HTML标签嵌套或者存在复杂结构时。对于更复杂的HTML处理,可能需要使用像Jsoup这样的库,它提供了更强大的解析和操作HTML的能力。 在实际项目中,`README...
这个场景中,我们关注的是如何使用Java和正则表达式来移除HTML代码中的`<script>`标签,因为这些标签通常包含JavaScript代码,可能对页面的呈现或安全有特殊影响。下面我们将深入探讨这个话题。 首先,`<script>`...
简单的清除html标签的代码,效率很高,使用正则
而Java的正则表达式功能可以用来匹配并删除字符串中的HTML标签,下面将详细介绍在Java中如何使用正则表达式去除HTML标签。 首先,我们需要了解几个关键概念。正则表达式(Regular Expression)是一种字符序列,它...
2. **Java正则表达式提取双引号中间的部分**:通过正则表达式可以很容易地提取出双引号之间的内容,这对于解析配置文件或从文本中提取特定信息非常有用。 3. **Java字符串添加双引号**:有时候为了满足某些格式的...
本篇文章将详细讲解如何利用Java的正则表达式来提取HTML或其他XML文档中的标签间的数据。 首先,我们将关注标题中提到的“Java利用正则取标签之间的数据”。在给定的示例中,我们有一个字符串`str`包含两个`<font>`...
### Java常用正则表达式详解 #### 一、概述 正则表达式是进行字符串匹配的强大工具,在Java中被广泛应用于各种应用场景,如文本搜索、数据验证等。本篇文章将根据给定的部分内容来详细解释Java中常用的正则表达式,...
最后,`outTag`方法可能是用来去除HTML标签,只保留纯文本标题。 接着,`getLink`方法使用了更复杂的正则表达式`[^>]*href=("([^"]*)"|'([^']*)'|([^s>]*))[^>]*>(.*?)</a>`来匹配所有的超链接。这个正则表达式设计...
本篇将重点讲解如何使用Java配合正则表达式去掉HTML标签,尤其是处理双引号的问题。 首先,我们来看给出的代码片段: ```java public static String htmlToStr(String htmlStr) { String result = ""; boolean ...
为了更好地处理这些数据,例如进行文本分析或者将其显示在不支持HTML渲染的环境中,就需要去除其中的HTML标签。 ### Java实现方法详解 #### 方法定义 在给定的代码片段中,`stripTags`方法接受一个名为`...
Java正则表达式教程是为那些想要深入了解Java编程语言中正则表达式使用方法的初学者准备的。正则表达式(Regular Expression)是一种强大的文本处理工具,它用于模式匹配、搜索、替换等操作,广泛应用于字符串处理和...
这段代码定义了一个名为`RemoveHTML`的函数,它接受一个包含HTML的字符串作为参数,然后使用正则表达式来移除所有的HTML标签。 核心部分在于`objRegExp.Pattern = "<.+?>"`这一行。这里的正则表达式`<.+?>`是用来...
5. 对于每个匹配项,使用`m.group(1)`获取第一个捕获组(即HTML标签之间的文本),并使用`trim()`方法去除两侧的空格。 6. 如果捕获到的文本非空,则打印出来。 整个过程就是通过正则表达式解析HTML,提取出纯文本...
1. **HTML标签去除**:这个工具类可能会提供一个方法,例如`removeHtmlTags(String content)`,用于删除HTML标签,只保留文本内容。这通常涉及到正则表达式,如`/*?>/g`,来匹配并替换HTML标签。 2. **CSS去除**:...