对html文本去除标签(超文本去除标签部分)
来源:互联网 发布:网络专题策划方案 编辑:程序博客网 时间:2024/06/01 12:22
在正在做的项目中,有个地方需要展示超文本的一部分内容,这样对内容进行剪切的时候容易出现问题。比如
内容
剪切成了 内容< 这样显示的数据就不是我们想要的结果了。
下面是在网上收录的一个工具类,加之改造自己使用、
下面是在网上收录的一个工具类,加之改造自己使用、
package com.yssoft.fs.publicService.utils;import java.util.regex.Matcher; import java.util.regex.Pattern; public class HtmlToText { 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 = "<a>\\s*|\t|\r|\n</a>"; /* 定义空格回车换行符 */ private static final String regEx_span = "/<span[^>]*>([^<]*)<\\/span>/ig"; /* span*/ private static final String regEx_strong = "<strong.*?>(((?!<\\/strong>).)*)<\\/strong>"; /* strong*/ public static String delHTMLTag( String htmlStr ) { /* 去掉script标签 */ Pattern p_script = Pattern.compile( regEx_script, Pattern.CASE_INSENSITIVE ); Matcher m_script = p_script.matcher( htmlStr ); htmlStr = m_script.replaceAll( "" ); /* 过滤script标签 */ /* 去掉style标签 */ Pattern p_style = Pattern .compile( regEx_style, Pattern.CASE_INSENSITIVE ); Matcher m_style = p_style.matcher( htmlStr ); htmlStr = m_style.replaceAll( "" ); /* 过滤style标签 */ /* 去掉html标签 */ Pattern p_html = Pattern.compile( regEx_html, Pattern.CASE_INSENSITIVE ); Matcher m_html = p_html.matcher( htmlStr ); htmlStr = m_html.replaceAll( "" ); /* 过滤html标签 */ /* 去掉span标签 */ Pattern span_html = Pattern.compile( regEx_span, Pattern.CASE_INSENSITIVE ); Matcher span = span_html.matcher( htmlStr ); htmlStr = span.replaceAll( "" ); /* 过滤html标签 */ /* 去掉regEx_strong标签 */ Pattern strong_html = Pattern.compile( regEx_strong, Pattern.CASE_INSENSITIVE ); Matcher strong = strong_html.matcher( htmlStr ); htmlStr = strong.replaceAll( "" ); /* 过滤html标签 */ /* 去掉空格 */ Pattern p_space = Pattern .compile( regEx_space, Pattern.CASE_INSENSITIVE ); Matcher m_space = p_space.matcher( htmlStr ); htmlStr = m_space.replaceAll( "" ); /* 过滤空格回车标签 */ /* 去掉<p>标签<br></br>标签和<>之间内容 */ htmlStr.replaceAll( "<p .*?>", "\r\n" ); htmlStr.replaceAll( "<br\\s*/?>", "\r\n" ); htmlStr.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); } }
使用的时候调用getTextFromHtml方法 并将需要转换的内容传入方法中,就能得到转换后的内容
阅读全文
0 0
- 对html文本去除标签(超文本去除标签部分)
- HTML文本去除标签
- 去除文本中的HTML标签
- html去除html标签保留文本
- js去除文本中的html标签
- js去除文本中的html标签
- 去除HTML标签(初级)
- js 去除 HTML 标签
- 去除html标签
- 去除html标签
- 去除Html标签
- 去除HTML标签
- 去除Html标签
- 去除HTML标签
- 去除HTML标签
- JS去除html标签
- js去除html标签
- 去除一些html标签
- 自底向上分析网络体系结构
- 视音频数据处理入门:FLV封装格式解析——雷神经典
- 3.2 Android Studio常用功能与快捷键
- c++虚函数经典例子
- LeapMotion Demo1
- 对html文本去除标签(超文本去除标签部分)
- PAT甲级真题及训练集(13)--1027. Colors in Mars (20)
- Jfinal对Oracle数据库Date类型的字段个人感觉不是很好
- Maven打包可运行jar
- Linux下浅谈crond与crontab
- [Ceph分析]源码目录结构分析
- ubuntu开机自启动tomcat
- Spring整合Ehcache管理缓存
- 读取与保存