`
cuiyadll
  • 浏览: 197533 次
文章分类
社区版块
存档分类
最新评论

java用正则去除html标签

 
阅读更多
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("&nbsp;", "");  
        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标签的方法示例

    主要介绍了Java使用正则表达式删除所有HTML标签的方法,结合完整实例形式分析了java针对HTML页面元素script标签、style标签、html标签等的正则匹配相关操作技巧,需要的朋友可以参考下

    java代码-正则去除HTML代码中的A标签

    java代码-正则去除HTML代码中的A标签

    java代码-正则去除HTML代码中的IMG标签

    java代码-正则去除HTML代码中的IMG标签

    简单的清除html标签的代码,效率很高,使用正则

    简单的清除html标签的代码,效率很高,使用正则

    java代码-正则去除HTML代码中的SCRIPT标签

    java代码-正则去除HTML代码中的SCRIPT标签

    java去掉html标签 必须首先去掉双引号的正则.docx

    java去掉html标签 必须首先去掉双引号的正则.docx

    java 正则表达式

    JAVA正则表达式语法(转)正则表达式语法正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述在搜索文本时要匹配的一个或多个字符串。正则表达式示例表达式 ...

    java去掉html标签 必须首先去掉双引号的正则

    代码如下:public static String htmlToStr(String ... //去掉引号 char[] a = htmlStr.toCharArray(); int length=a.length; for(int i=0;i&lt;length;i++){ if(a[i]=='&lt;‘){ flag=false; continue; } if(a[i]

    正则表达式经典实例

    每个程序员都会遇到需要使用正则表达式的情况,但是要用好正则表达式却并不容易。本书提供了100多个实例,以帮助读者使用正则表达式处理数据和文本。即使有经验的用户也经常会遇到性能不佳、误报、漏报等让人挠头的...

    正则表达式经典实例.pdf

    每个程序员都会遇到需要使用正则表达式的情况,但是要用好正则表达式却并不容易。本书提供了100多个实例,以帮助读者使用正则表达式处理数据和文本。即使有经验的用户也经常会遇到性能不佳、误报、漏报等让人挠头的...

    Java中正则表达式去除html标签

    Java中正则表达式去除html的标签,主要目的更精确的显示内容,接下来通过本文给大家介绍Java中正则表达式去除html标签的方法,需要的朋友参考下

    解析字符串去除HTML代码,保留文字,图片,视频

    用正则表达式,去除字符串中的HTML代码并保留文字,图片,视频。

    企业java工程师测试题

    而innerText只适用于IE浏览器,因此,尽可能地去使用innerHTML,而少用innerText,如果要输出不含HTML标签的内容,可以使用innerHTML取得包含HTML标签的内容后,再用正则表达式去除HTML标签 4. int 和 Integer 有...

    javascript实现去除HTML标签的方法

    本文实例讲述了javascript实现去除HTML标签的方法。分享给大家供大家参考,具体如下: [removed] String.prototype.stripHTML = function() { var reTag = /&lt;(?:.|\s)*?&gt;/g; return this.replace(reTag,"...

    Java面试宝典2020修订版V1.0.1.doc

    35、写出验证Email的正则表达式 22 39、说出十种常见的异常 22 40什么是检查性异常和非检查性异常? 23 41、Java的异常处理机制是什么? 23 42、一个静态方法,里面可不可以用this和super关键字 24 三、JavaScript/...

    Java获取任意http网页源代码的方法

    主要介绍了Java获取任意http网页源代码的方法,可实现获取网页代码以及去除HTML标签的代码功能,涉及Java正则操作相关实现技巧,需要的朋友可以参考下

    Java开源的xpath解析器Jsoupxpath.zip

    JsoupXpath 是一款纯Java开发的使用xpath解析html的解析器,xpath语法分析与执行完全独立,html的DOM树生成借助Jsoup,故命名为JsoupXpath.为了在java里也享受xpath的强大与方便但又苦于找不到一款足够强大的xpath...

    editplus 代码编辑器html c++ jsp css

    具体解决方法,在 Editplus 中使用正则表达式,由于“(”、“)”被用做预设表达式(或者可以称作子表达式)的标志,所以查找 “ \n” 时会提示查找不到,所以也就无法进行替换了,这时可以把“(”、“)”使用任意...

    基于Python的网站爬虫代码源码.zip

    用正则匹配将所有爬取的页面中符合http://www.liuchuo.net/articles/ 形式的链接提取为待爬取的URL,将文章页面的标题h1标签和时间time标签分别存储在data字典的title和time中,将url、title和time以表格形式输出到...

Global site tag (gtag.js) - Google Analytics