本文来自我的个人博客: java 正则表达式提取html纯文本

做内容的大家都知道,从html中直接提取纯文本是一个非常大的问题。现将我做的正则匹配贴上:

import java.util.regex.Matcher;
import java.util.regex.Pattern; public class TestReg {
static String reg = "<[a-zA-Z]+.*?>([\s\S]*?)</[a-zA-Z]*>";
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "<p></p><p>&nbsp;&nbsp;&nbsp;&nbsp;我们以Buffer类開始对java.nio包的浏览历程。"
+ "这些类是java.nio的构造基础。这个系列中。我们将尾随《java NIO》书籍一起深入研究缓冲区。"
+ "了解各种不同的类型,并学会如何使用。</p><p>&nbsp;&nbsp;&nbsp;&nbsp;一个Buffer对象"
+ "是固定数量的数据容器。 其作用是一个存储器,或者分段运输区,在这里数据可被存储并在之后用于检索。 "
+ "</p><p>&nbsp;&nbsp;&nbsp;&nbsp;Buffer类的家谱:</p><p>&nbsp;&nbsp;&nbsp;&nbsp;"
+ "<img src="http://photo.jfq24.com/image/bigger/blog/server/upload/2014-07/user_2/13711406446068247.png" "
+ "title="2014-07-27_1527.png"></p><p>&nbsp;&nbsp;&nbsp;&nbsp;<strong>一,缓冲区基础</strong>"
+ "</p><p>&nbsp;&nbsp;&nbsp; 1.缓冲区的属性:</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
+ "容量(capacity):缓冲区可以容纳的数据元素的最大数量,这一容量是在缓冲区被创建时设置的,而且永远不能被改变</p>"
+ "<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;上界(limit): 缓冲区的第一个不能被读或写的元素。"
+ "或者说。缓冲区中现存元素的计数。</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;位置(position): "
+ "下一个要被读或写的元素的索引,位置会自己主动由对应的get()和put()函数更新。</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
+ "&nbsp;&nbsp;&nbsp;标记(mark): 一个备忘位置,调用mark()来设定mark=position.调用reset()设定position=mark。"
+ "标记在设定前是没有定义的(undefied)。</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这四个属性的关系例如以下:</p";
Pattern p = Pattern.compile(reg, Pattern.MULTILINE);
str = str.replace("&nbsp;", "");
Matcher m = p.matcher(str);
while(m.find()) {
String data = m.group(1).trim();
if(!"".equals(data)) {
System.out.println(data);
}
}
} }

版权声明:本文博客原创文章。博客,未经同意,不得转载。

java 正则表达式提取html纯文本的更多相关文章

  1. 实用的php清除html,php去除空格与换行,php清除空白行和换行,提取页面纯文本

    实用的php清除html,换行,空格类,php去除空格与换行,php清除空白行和换行,提取页面纯文本内容 方法一: function DeleteHtml($str) { $str = trim($s ...

  2. java正则表达式提取地址中的ip和端口号

    由于我需要用到java正则表达式提取地址中的ip和端口号,所以我就写了一个demo,测试一下,下面是demo public class Test0810_1 { public static void ...

  3. 使用Java正则表达式提取字符串中的数字一例

    直接上代码: String reg = "\\D+(\\d+)$"; //提取字符串末尾的数字:封妖塔守卫71 == >> 71 String s = monster. ...

  4. EXchange导出通讯录提取url纯文本

    用outlook链接邮箱 文件-打开和导出--导出到文件--逗号分隔值--选择联系人--保存 保存为一个后缀为csv的文件 打开该文件  选中该列 用替换功能删掉()符号 用vba脚本删掉汉字 Sub ...

  5. Java 正则表达式提取标签中的属性(src 连接地址)等

    public class Test { public static void main(String[] args) { String source = "<p><img ...

  6. java 正则表达式提取价格

    实例代码: public static void main(String[] args) { String str="11000.00元"; Pattern pattern = P ...

  7. Java正则表达式提取String字符串中的IP地址

    /** * 正则提前字符串中的IP地址 * @param ipString * @return */ public static List<String> getIps(String ip ...

  8. 从html富文本中提取纯文本

    其实从html富文本中提取纯文本很简单,富文本基本上是使用html标签给文本加上丰富多彩的样式. 所以只需要将富文本字符串中的“<.....>”标签剔除,即可得到纯文本.我们可以使用正则表 ...

  9. java如何将html过滤为纯文本

    java开发中jsp页面可以嵌套很多插件就可以将html形式的文本直接转化为纯文本,但是如果你已经保存下来或者没有运用插件,这个额html形式的文本你该怎么转化为纯文本呢?有次我将公告保存了html形 ...

随机推荐

  1. LDAPserver的安装

    源代码安装,以root用户进行 由于:由于openldap须要用Berkeley DB来存放数据,所以要先安装所以需先安装Berkeley DB 4.2.52数据库. 一 安装Berkeley DB ...

  2. Jquery 时间格式化

    var TimeObjectUtil;/** * @title 时间工具类 * @note 本类一律违规验证返回false * @author {boonyachengdu@gmail.com} * ...

  3. Google Maps Android API v2 (2)- 地图对象

    地图对象 Android的谷歌地图API允许你在你的Andr​​oid应用程序中显示谷歌地图.在谷歌地图移动(GMM)的应用程序,你看到的地图,这些地图具有相同的外观和API暴露出许多相同的功能.GM ...

  4. Word001

    C# Word 类库 2009-08-06 22:10 13470人阅读 评论(10) 收藏 举报 c#objectstring文档microsoftexcel using System;using ...

  5. silverlight与wcf双向通讯 例子

    本文将建立一个silverlight与wcf双向通讯的简单实例,以下是详细步骤: 新建Silverlight应用程序,名称WCFtest.解决方案中添加WCF服务应用程序,名称WcfServiceTe ...

  6. mysqldump 命令的使用

    1.导出结构不导出数据 mysqldump -d databasename -uroot -p > xxx.sql 2.导出数据不导出结构 mysqldump -t databasename - ...

  7. js多个物体运动问题2

    问题1 http://www.cnblogs.com/huaci/p/3854216.html 在上一讲问题1,我们可以整理出2点: 1,定时器作为运动物体的属性 2,startMove方法,参数要传 ...

  8. 英特尔® 硬件加速执行管理器安装指南 — Microsoft Windows*

    介绍 本文将指导您安装英特尔® 硬件加速执行管理器(英特尔® HAXM),这是一款可以使用英特尔® 虚拟化技术(VT)加快 Android* 开发速度的硬件辅助虚拟化引擎(管理程序). 前提条件 英特 ...

  9. POJ 2155 D区段树

    POJ 2155  D区段树 思考:D区段树是每个节点设置一个段树树. 刚開始由于题目是求A[I,J],然后在y查询那直接ans^=Map[i][j]的时候没看懂.后面自己把图画出来了才理解. 由于仅 ...

  10. javascript中的三角学

    三角学主要研究三角形和它们的边角关系,包含一个90度角的三角形被称为直角三角形.在这里主要研究直角三角形相关的知识. 1. 角度和弧度 360(角度) = 2*Math.PI(弧度) degrees ...