对html文本去除标签(超文本去除标签部分)
2017-06-26 17:38
447 查看
在正在做的项目中,有个地方需要展示超文本的一部分内容,这样对内容进行剪切的时候容易出现问题。比如
内容剪切成了 内容< 这样显示的数据就不是我们想要的结果了。
下面是在网上收录的一个工具类,加之改造自己使用、
使用的时候调用getTextFromHtml方法 并将需要转换的内容传入方法中,就能得到转换后的内容
内容剪切成了 内容< 这样显示的数据就不是我们想要的结果了。
下面是在网上收录的一个工具类,加之改造自己使用、
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方法 并将需要转换的内容传入方法中,就能得到转换后的内容
相关文章推荐
- ASP.NET去除HTML标记,取出文本中的图片地址,移除HTML标签
- Java后台去除前台传递数据中的页面标签(HTML,Javascript,Style),获取文本内容!
- Java 去除HTML标签转化成纯文本
- 去除html文本中所有html标签的看法
- 字符串 去除html标签得到 纯文本内容
- 网站上的页面元素 Meta标签-关键字,描述,机器人和辅助功能标签页标题内容-定位整个副本的关键字的内容和支付链接-连接结构,ALT标签,文本链接的话和标题,页面上的各主要部分的关键字密度,HTML有
- html去除html标签保留文本
- c# 去除文本的html标签
- java工具类:文本中去除html标签
- js去除文本中的html标签
- 去除文本中的HTML标签
- HTML文本去除标签
- js去除文本中的html标签
- Java正则去除文本中的HTML标签
- 使用HTMLParser 解析html字符串,去除html标签,提取纯文本
- 去除文本中html标签的小偷函数
- java工具类:文本中去除html标签
- 富文本怎么只获取文字内容去除html标签
- .net如何去除富文本中的HTML标签,获得纯文本!
- 如何去除html标签得到纯文本内容