一种word文档的提取和分析方法

文档序号:8412502阅读:364来源:国知局
一种word文档的提取和分析方法
【技术领域】
[0001] 本发明涉及文档处理领域,更具体地说,涉及一种word文档的提取和分析方法。
【背景技术】
[0002] 在如今的电子信息化高度发达的时代,对于信息的提取和分析有着强烈需求的时 代,显得word文档的智能分析尤为重要。无论是大项目还是小功能,都需要一定的文档沟 通,而更多的智能化系统中,就需要不断的提取和分析这样的文档。在这样的需求前提下, 也出现了许多类似的文档处理工具,无论是成熟的项目工具还是类库工具,都出现不少, 如:
[0003] JACOB :这是一个类库型的工具,提供了一种和office进行交互的类库。这个类 库提供的功能也相当的庞大,基本上能满足简单的word、excel操作,但要重塑成一个有结 构,有模型化的数据结构,就相对比较复杂。而且需要一个jacob.dll的支持,因此和系统 的耦合度也比较大。
[0004] POI :这是一个类库型的工具,是一个纯JAVA实现的操作类,提供了简单的word内 容提取。可支持的方法相对比较少,往往很难满足需求。
[0005] JCOM :类似JACOB的一个工具,但需要依赖windows平台,这样又违背了 JAVA这个 平台无关的特性,多多少少有点不合适。而且在功能满足上,也基本上同JACOB,在使用上, 需要安装PDF打印机。
[0006] 当然还有其他一些实现word内容提取的方式,如com4j、j一Interop等,当这些工 具并不是专门提供word处理的,可以通过com和Office交互达到效果,使用比较麻烦。
[0007] 对于以上这些工具,都基本上能够简单的提取内容,但在现在这样的信息需求量 大,信息内容要求精确和智能的时代中,只是简单提取内容,并不能实现智能转化和分析, 已经越来越不能满足要求,也没办法推进更进一步的信息化。

【发明内容】

[0008] 本发明是鉴于上述技术问题而产生的。本发明的一个目的是提出一种word文档 的提取和分析方法。
[0009] 在一个方面中,根据本发明的word文档的提取和分析方法包括:
[0010] 步骤A :按照"paragraph"片段逐段读入,并判断当前段是内容段还是等级段;步 骤B :如果判断出当前段是内容段,则将该内容段加入到上一等级段的内容队列中,并且转 到步骤G;否则步骤C :判断当前段的等级值是小于、等于、还是大于上一段的等级值;步骤 D :如果判断出当前段的等级值等于上一段的等级值,则当前段是与上一段同等级的段,并 且将该当前段加入到上一段所在的队列中,并转到步骤G ;步骤E :如果判断出当前段的等 级值大于上一段的等级值,则当前段为上一段的儿子段,并且将该当前段加入到上一段的 儿子队列中,并转到步骤G;步骤F :如果判断出当前段的等级值小于上一段的等级值,则进 一步判断当前段的等级值是否等于上一段的父亲段的等级值,若仍小于,则依次回溯到更 上一级父亲段,直到查找到与当前段的等级值相等的段,并将当前段加入到查找到的段所 在的队列中;步骤G :判断当前段是否是最后一段,若不是则转入步骤A,否则该处理结束。
[0011] 在这个方面中,其中在步骤A中:每个段具有相应的大纲等级属性,根据大纲等级 的属性关联,判断出所述数据片段是等级段还是内容段。
[0012] 在这个方面中,其中在步骤C中:若当前段是第一段,则初始化上一段的等级值为 第一段的等级值。
[0013] 在这个方面中,其中在步骤D中:若当前段是第一段(T1),则直接加入到根队列 中。
【附图说明】
[0014] 结合随后的附图,从下面的详细说明中可显而易见的得出本发明的上述及其他目 的、特征及优点。在附图中:
[0015] 图1示出了根据本发明的word文档提取和分析方法的流程图;
[0016] 图2示出了 word文档中的每个段的大纲等级属性的示意图。
【具体实施方式】
[0017] 为了更全面地理解本发明及其优点,下面结合附图及具体实施例对本发明做进一 步详细地说明。
[0018] 首先,参考图1,对根据本发明的一种word文档的提取和分析方法进行详细地说 明。
[0019] 如图1所示,根据本发明的word文档的提取和分析方法包括步骤:
[0020] 步骤A :按照"paragraph"片段逐段读入,并判断当前段是内容段还是等级段;
[0021] 具体地说,按照"paragraph"片段逐段读入,并读取读入的当前段的大纲等级 (outlineLevel)〇
[0022] 如图2所示,word文档中的每个段具有相应的大纲等级属性。此后,根据大纲等 级的属性关联,判断出所述数据片段是等级段还是内容段。
[0023] 其中如下表所示,如果所提取的大纲等级是9,则判断出当前段是正文文本(即内 容段),如果所提取的大纲等级0-8中的值,则判断出当前段是等级段,其中0-8是等级段的 等级值,〇表不等级段的等级最1?,对应图1中的大纲级别1级;1表不比〇更低级别的段, 对应图1中的大纲级别2级;依次类推,8表示等级段的等级最低,对应图1中的大纲级别 9级。当然,对于本领域普通技术人员来说,大纲等级的表述方式并不局限于此,而是可使用 任何适当的方式。
[0024]
【主权项】
1. 一种word文档的提取和分析方法包括步骤: A、 按照段逐段读入,并判断当前段是内容段还是等级段; B、 如果判断出当前段是内容段,则将该内容段加入到上一等级段的内容队列中,并且 转到步骤G; C、 判断当前段的等级值是小于、等于、还是大于上一段的等级值 D、 如果判断出当前段的等级值等于上一段的等级值,则当前段是与上一段同等级的 段,并且将该当前段加入到上一段所在的队列中,并转到步骤G; E、 如果判断出当前段的等级值大于上一段的等级值,则当前段为上一段的儿子段,并 且将该当前段加入到上一段的儿子队列中,并转到步骤G; F、 如果判断出当前段的等级值小于上一段的等级值,则进一步判断当前段的等级值是 否等于上一段的父亲段的等级值,若仍小于,则依次回溯到更上一级父亲段,直到查找到与 当前段的等级值相等的段,并将当前段加入到查找到的段所在的队列中; G、 判断当前段是否是最后一段,若不是则转入步骤A,否则该处理结束。
2. 根据权利要求1所述的方法,其中在步骤A中: 每个段具有相应的大纲等级属性,根据大纲等级的属性关联,判断出所述数据片段是 等级段还是内容段。
3. 根据权利要求2所述的方法,其中在步骤C中: 若当前段是第一段,则初始化上一段的等级值为第一段的等级值。
4. 根据权利要求3所述的方法,其中在步骤D中: 若当前段是第一段(Tl),则直接加入到根队列中。
【专利摘要】一种word文档的提取和分析方法包括步骤:按照段逐段读入,并判断当前段是内容段还是等级段,并且进一步判断当前段的等级值是小于、等于、还是大于上一段的等级值,并进行相应的处理。本发明采用了支持程度好的类库来简化文档内容的提取,更有效且更简单方便地使用这个类库以完成对word的操作控制。
【IPC分类】G06F17-21, G06F17-30
【公开号】CN104731835
【申请号】CN201310731594
【发明人】叶琼德, 韦海强, 林静, 吴汝伟, 卢会春
【申请人】浙江省公众信息产业有限公司
【公开日】2015年6月24日
【申请日】2013年12月24日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1