一种OFD文档中快速检索文本的方法、装置和电子设备制造方法及图纸

技术编号:37348037 阅读:17 留言:0更新日期:2023-04-22 21:44
本发明专利技术公开了一种OFD文档中快速检索文本的方法、装置和电子设备,涉及数据检索技术领域,包括:接收待检索的模式字符串;提取待检索的文本字符串,并生成索引数组;遵循首字符对应的原则,进行对比匹配,记录首字符对应成功匹配的索引位置;提取索引数组的索引位置上与模式字符串等长的待匹配字符串,遍历索引数组,生成待匹配字符串集;判断模式字符串与待匹配字符串集中的待匹配字符串是否匹配,若匹配成功,则将待匹配字符串放入结果字符串集,若匹配失败,则进行下一个待匹配字符串的匹配。本发明专利技术遵循首字符对应的原则,生成索引数组,降低了下一轮检索匹配的处理量,降低了字符串匹配的复杂度,实现起来简单,提高了文本检索效率。检索效率。检索效率。

【技术实现步骤摘要】
一种OFD文档中快速检索文本的方法、装置和电子设备


[0001]本专利技术涉及数据检索
,更具体的说,尤其涉及一种OFD文档中快速检索文本的方法、装置和电子设备。

技术介绍

[0002]在日常阅读OFD文档时,检索文本功能是基本需求,是每个OFD文档阅读器必备的功能。而对于一些有上百页的单页面包含成百甚至上千文字的OFD文档来说,如何快速在文档中检索到指定的模式字符串,就成为了用户的迫切需求。
[0003]在OFD文档中检索文本,通常的技术方案一:先是从首页到尾页逐一提取每一页的文本字符串,再将每页的文本字符串拼接在一起组成全文字符串,最后通过字符串匹配算法快速定位模式字符串在全文字符串中的位置;改进的技术方案二:以页为单位,先提取第一页的文本字符串,再通过字符串匹配算法快速定位模式字符串在当前页的文本字符串中的位置,然后递增一页取第二页的文本字符串,通过字符串匹配算法定位模式字符串在第二页文本字符串中的问题,以此类推,直到匹配完文档的最后一页为止,现有技术方案如果遇到页数多,单页文本字数多的时候,检索时间都会比较长。

技术实现思路

[0004]本专利技术为了解决现有技术的算法存在时间复杂度高、实现起来困难、文本检索效率低的问题,本专利技术通过在解析和提取OFD文档的文本时,生成记录待检索模式字符串首字符的位置的索引数组,再根据索引数组记录的位置,减少了文本字符串的遍历次数,降低了后续检索匹配的处理量,以达到快速检索OFD文本的目的。
[0005]为了解决上述技术方案,本专利技术提供了一种方案:
[0006]第一方面,本专利技术实施例提供了一种OFD文档中快速检索文本的方法,包括:
[0007]获取待检索的模式字符串;
[0008]提取待检索的文本字符串,并生成一个记录索引位置的索引数组;
[0009]遵循首字符对应的原则,将模式字符串的首字符与文本字符串进行对比匹配,记录首字符对应成功匹配的索引位置;
[0010]提取文本字符串对应的索引数组的索引位置上与模式字符串等长的待匹配字符串,遍历索引数组中的每个索引位置,得到待匹配字符串集;
[0011]判断模式字符串与待匹配字符串集中的待匹配字符串是否匹配,若匹配成功,则将匹配成功的待匹配字符串放入结果字符串集,若匹配失败,则进行下一个待匹配字符串的匹配。
[0012]结合第一方面,在第一方面的第一种实现方式中,提取待检索的文本字符串的具体步骤为:遍历OFD文档页面Content.xml中的每个TextObject节点;遍历每个TextObject节点下TextCode中的每个字符,并记录当前字符的偏移量和大小,获取当前字符的编码值。
[0013]结合第一方面,在第一方面的第二种实现方式中,在获取待检索的模式字符串后,
获取模式字符串的每个字符的编码值。
[0014]结合第一方面,在第一方面的第三种实现方式中,根据字符的编码值,在模式字符串的首字符与文本字符串进行对比匹配;将文本字符串中字符的编码值与模式字符串的首字符的编码值对比匹配。
[0015]结合第一方面,在第一方面的第四种实现方式中,在将匹配成功的待匹配字符串放入结果字符串集之后,判断模式字符串与待匹配字符串集中的待匹配字符串是否匹配没有结束,继续遍历完整个索引数组为止。
[0016]结合第一方面,在第一方面的第五种实现方式中,方法还包括:将结果字符串集中的所有待匹配字符串确定为待检索的模式字符串的检索结果;返回检索结果。
[0017]结合第一方面,在第一方面的第六种实现方式中,方法还包括:判断结果字符串集是否为空,若结果字符串集为空,则显示未找到检索相关数据;若结果字符串集不为空,则高亮显示检索结果。
[0018]第二方面,本专利技术实施例提供了一种OFD文档中快速检索文本的装置,包括:
[0019]接收模块,用于接收待检索的模式字符串;
[0020]提取识别模块,用于提取待检索的文本字符串,并生成一个记录索引位置的索引数组;
[0021]提取识别模块,还用于遍历OFD文档页面Content.xml中的每个TextObject节点;遍历每个TextObject节点下TextCode中的每个字符,并记录当前字符的偏移量和大小,获取当前字符的编码值;在获取待检索的模式字符串后,获取模式字符串的每个字符的编码值;
[0022]检索匹配模块,用于在遵循首字符对应的原则,将模式字符串的首字符与文本字符串进行检索;
[0023]检索匹配模块,还用于提取文本字符串对应的索引数组的索引位置上与模式字符串等长的待匹配字符串,遍历索引数组中的每个索引位置,得到待匹配字符串集;
[0024]检索匹配模块,还用于判断模式字符串与待匹配字符串集中的待匹配字符串是否匹配,若匹配成功,则将匹配成功的待匹配字符串放入结果字符串集;若匹配失败,则进行下一个待匹配字符串的匹配;
[0025]检索结果显示模块,用于判断结果字符串集是否为空,若结果字符串集为空,则显示未找到检索相关数据;若结果字符串集不为空,则高亮显示检索结果。
[0026]结合第二方面,在第二方面的第一种实现方式中,提取识别模块,还用于获取模式字符串的每个字符的编码值。
[0027]第三方面,电子设备,设备包括处理器以及存储器:存储器用于存储程序代码,并将程序代码传输给处理器;处理器用于根据程序代码中的指令执行本专利技术任意实施例提供的一种OFD文档中快速检索文本的方法。
[0028]本专利技术有益效果:在OFD文档中查找待检索的模式字符串的结果字符串时,在提取识别文本字符串和模式字符串的过程中,生成一个记录索引位置的索引数组,高亮显示文本检索结果;在待检索的模式字符串进行检索过程中,本专利技术遵循首字符对应的原则,将模式字符串的首字符与文本字符串进行对比匹配,记录首字符对应成功匹配的索引位置;提取文本字符串对应的索引数组的索引位置上与模式字符串等长的待匹配字符串,遍历索引
数组中的每个索引位置,生成待匹配字符串集,降低了后续检索匹配的处理量;判断模式字符串与待匹配字符串集中的待匹配字符串是否匹配,将匹配成功的待匹配字符串放入结果字符串集。(1)本专利技术通过生成记录索引位置的索引数组,达到高亮显示文本检索结果的效果;(2)遵循首字符对应的原则,从文本字符串中筛选出待匹配字符串集,降低了下一轮检索匹配的处理量;(3)在判断模式字符串与待匹配字符串集中的待匹配字符串是否匹配时,从左到右进行对应位置字符的检索匹配,若出现一个字符不匹配时,则进行下一个待匹配字符串的检索匹配,降低了字符串匹配的复杂度,实现起来简单,提高了文本检索效率。
附图说明
[0029]图1是本专利技术实施例提供的一种OFD文档中快速检索文本的方法流程示意图;
[0030]图2a是本专利技术实施例提供的一种检索过程示意图之一;
[0031]图2b是本专利技术实施例提供的一种检索过程示意图之二;
[0032]图2c是本专利技术实施本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种OFD文档中快速检索文本的方法,其特征在于,包括:接收待检索的模式字符串;提取待检索的文本字符串,并生成一个记录索引位置的索引数组;遵循首字符对应的原则,将所述模式字符串的首字符与所述文本字符串进行对比匹配,记录首字符对应成功匹配的索引位置;提取所述文本字符串对应的所述索引数组的索引位置上与所述模式字符串等长的待匹配字符串,遍历所述索引数组中的每个索引位置,得到待匹配字符串集;判断所述模式字符串与所述待匹配字符串集中的待匹配字符串是否匹配,若匹配成功,则将匹配成功的待匹配字符串放入结果字符串集,标记位置,若匹配失败,则进行下一个待匹配字符串的匹配。2.根据权利要求1所述的一种OFD文档中快速检索文本的方法,其特征在于,所述提取待检索的文本字符串的具体步骤为:遍历OFD文档页面Content.xml中的每个TextObject节点;遍历每个TextObject节点下TextCode中的每个字符,并记录当前字符的偏移量量和大小,获取当前字符的编码值。3.根据权利要求2所述的一种OFD文档中快速检索文本的方法,其特征在于,在所述接收待检索的模式字符串后,获取所述模式字符串的每个字符的编码值。4.根据权利要求3所述的一种OFD文档中快速检索文本的方法,其特征在于,根据所述字符的编码值,所述模式字符串的首字符与所述文本字符串进行对比匹配;将所述文本字符串中字符的编码值与模式字符串的首字符的编码值对比匹配。5.根据权利要求1至4任一项所述的一种OFD文档中快速检索文本的方法,其特征在于,在所述将匹配成功的待匹配字符串放入结果字符串集之后,所述判断所述模式字符串与所述待匹配字符串集中的待匹配字符串是否匹配没有结束,继续遍历完整个索引数组为止。6.根据权利要求5任一项所述的一种OFD文档中快速检索文本的方法,其特征在于,所述方法还包括:将所述结果字符串集中的所有所述待匹配字符串确定为所述待检索的模式字符串的检索结果;返回所述检索结果。7.根据权利要求6所述的一种...

【专利技术属性】
技术研发人员:应烨军金宏洲程亮
申请(专利权)人:江西金格科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1