CN112380337A - 基于富文本的高亮方法及装置 - Google Patents
基于富文本的高亮方法及装置 Download PDFInfo
- Publication number
- CN112380337A CN112380337A CN202011266905.5A CN202011266905A CN112380337A CN 112380337 A CN112380337 A CN 112380337A CN 202011266905 A CN202011266905 A CN 202011266905A CN 112380337 A CN112380337 A CN 112380337A
- Authority
- CN
- China
- Prior art keywords
- content
- search result
- information
- sub
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/338—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
Abstract
本申请实施例提供了一种基于富文本的高亮方法及装置,该方法包括:获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;对所述第二搜索结果进行解析,得到第一内容;基于所述第一关键信息对所述第一内容进行高亮。本申请通过对搜索结果进行解析,得到富文本数据的文本内容,并对富文本数据的文本内容中的关键信息进行高亮,可以保证搜索结果中html标签的完整性,从而实现基于富文本的高亮显示,提高了搜索的精确度。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种基于富文本的高亮方法及装置。
背景技术
目前,关键词搜索已经被广泛应用在不同的业务系统中,在基于纯文本的搜索时,会对关键字前后添加指定的高亮标签进行高亮显示,但是如果关键词为英文并且原始文档数据是含有富文本标签时,在通过英文关键字进行搜索时,往往达不到想要的高亮效果,比如一份原始的富文本文档存储时带有一些html标签,例如文本:<span>Ping an</span>,当搜索的关键字为英文“an”时,由于<span>标签中也含有an英文单词,因此在an前后添加高亮标签时会破坏原有<span>标签的完整性,导致搜索出来的结果出现<sp的出现,原始文本的富文本效果显示不出来,导致页面展示的搜索结果不正确,搜索的结果出现格式错误。
发明内容
本申请实施例提供了一种基于富文本的高亮方法及装置,能够保证html标签的完整性,实现基于富文本的高亮,提高搜索的精确度。
第一方面,本申请实施例提供一种基于富文本的高亮方法,所述方法包括:
获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;
从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;
对所述第二搜索结果进行解析,得到第一内容;
基于所述第一关键信息对所述第一内容进行高亮。
可选的,所述对所述第二搜索结果进行解析,得到第一内容,包括:
遍历所述第二搜索结果,将所述第二搜索结果中的html标签转换为Jsoup可识别的Document对象;
基于Elements对象操作,从所述Document对象中获取第一内容,所述第一内容为所述第二搜索结果中所述html标签的文本内容。
可选的,所述基于所述第一关键信息对所述第一内容进行高亮,包括:
将所述第一内容与所述第一关键信息进行匹配,得到第二关键信息,所述第一关键信息包括所述第二关键信息;
对所述第二关键信息进行高亮。
可选的,所述对所述第二关键信息进行高亮,包括:
获取第二关键信息在所述第一内容中的起始位置和结束位置;
基于所述起始位置和所述结束位置,分别将所述第一内容切割成至少一个子文本内容;
对第一子文本内容添加高亮标签,所述第一子文本内容为包括所述第二关键信息的任一子文本内容;
基于所述至少一个子文本内容的排列顺序,重新组装所述至少一个子文本内容。
可选的,所述第一搜索结果包括至少一个字符串数组;
所述获取第一搜索结果,包括:
将所述第一关键信息进行划分成至少一个关键子信息;
查询与第一关键子信息匹配的第二内容,所述第一关键子信息为所述至少一个关键子信息中的任一关键子信息;
将所述第二内容存储于第一字符串数组中,所述第一字符串数组为所述至少一个字符串数组中的任一字符串数组。
可选的,所述方法还包括:
计算所述第二内容与所述第一关键子信息的匹配度;
基于所述匹配度和所述第一关键子信息对应的权值,确定所述第二内容对应的排列权重;
基于所述排列权重,确定所述第一字符串数组的排列位置。
可选的,所述方法还包括:
按照所述至少一个字符串数组中的每一字符串数组对应的排列位置,展示所述第一搜索结果。
第二方面,本申请实施例提供一种基于富文本的高亮装置,所述装置包括:
获取单元,用于获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;
查找单元,用于从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;
解析单元,用于对所述第二搜索结果进行解析,得到第一内容;
高亮单元,用于基于所述第一关键信息对所述第一内容进行高亮。
可选的,所述解析单元具体用于:遍历所述第二搜索结果,将所述第二搜索结果中的html标签转换为Jsoup可识别的Document对象;
基于Elements对象操作,从所述Document对象中获取第一内容,所述第一内容为所述第二搜索结果中所述html标签的文本内容。
可选的,所述高亮单元具体用于:
将所述第一内容与所述第一关键信息进行匹配,得到第二关键信息,所述第一关键信息包括所述第二关键信息;
对所述第二关键信息进行高亮。
可选的,在对所述第二关键信息进行高亮方面,所述高亮单元具体用于:
获取第二关键信息在所述第一内容中的起始位置和结束位置;
基于所述起始位置和所述结束位置,分别将所述第一内容切割成至少一个子文本内容;
对第一子文本内容添加高亮标签,所述第一子文本内容为包括所述第二关键信息的任一子文本内容;
基于所述至少一个子文本内容的排列顺序,重新组装所述至少一个子文本内容。
可选的,所述第一搜索结果包括至少一个字符串数组;
所述获取单元具体用于:
将所述第一关键信息进行划分成至少一个关键子信息;
查询与第一关键子信息匹配的第二内容,所述第一关键子信息为所述至少一个关键子信息中的任一关键子信息;
将所述第二内容存储于第一字符串数组中,所述第一字符串数组为所述至少一个字符串数组中的任一字符串数组。
可选的,所述装置还包括:计算单元和确定单元;
所述计算单元,用于计算所述第二内容与所述第一关键子信息的匹配度;
所述确定单元,用于基于所述匹配度和所述第一关键子信息对应的权值,确定所述第二内容对应的排列权重;
所述确定单元,还用于基于所述排列权重,确定所述第一字符串数组的排列位置。
可选的,所述装置还包括展示单元;
所述展示单元,用于按照所述至少一个字符串数组中的每一字符串数组对应的排列位置,展示所述第一搜索结果。
第三方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面中任一方法所描述步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中任一方法所描述的部分或全部步骤。
第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中任一方法所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
本申请实施例提供一种基于富文本的高亮方法及装置,通过获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;对所述第二搜索结果进行解析,得到第一内容;基于所述第一关键信息对所述第一内容进行高亮。本申请通过对搜索结果进行解析,得到富文本数据的文本内容,并对富文本数据的文本内容中的关键信息进行高亮,可以保证搜索结果中html标签的完整性,从而实现基于富文本的高亮显示,提高了搜索的精确度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种搜索引擎的逻辑结构意图;
图2是本申请实施例提供的一种基于富文本的高亮方法的应用场景示意图;
图3是本申请实施例提供的一种基于富文本的高亮方法的流程示意图;
图4a是本申请实施例提供的一种基于富文本的高亮装置的功能单元组成框图;
图4b是本申请实施例提供的另一种基于富文本的高亮装置的功能单元组成框图;
图5是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、成功地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了更好地理解本申请实施例的方案,下面先对本申请实施例可能涉及的相关术语和概念进行介绍。
(1)搜索引擎(search engine)是指根据一定的策略、运用特定的计算机程序搜集互联网上的信息,在对信息进行组织和处理后,并将处理后的信息显示给用户,是为用户提供检索服务的系统。请参见图1,为搜索引擎的逻辑结构示意图;搜索引擎的控制器控制网页爬虫从互联网中爬取网页,然后存放至原始数据库中;索引器将原始数据库中的网页信息进行分析,从中抽取出索引项,生成索引数据存入索引数据库中;检索器根据用户的查询在索引数据库中快速检索文档,进行相关度评价,对将要输出的搜索结果中的网页链接进行排序,按用户的查询需求合理反馈搜索结果;用户接口即人机交互接口,其可以为客户端的浏览器;用户行为日志数据库记录用户的行为日志,包括记录用户的搜索请求中的关键词,用户基于该关键词进行的后续访问等;日志分析器对用户行为日志数据库中进行日志分析,提取关键词等信息提供给原始数据库。
(2)jsoup是一款Java的HTML解析器,可直接解析某个URL地址、HTML文本内容。其可以提供一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
(2)document对象代表给定浏览器窗口中的HTML文档,是指HTML文件中的一种对象。此对象在Microsoft®;Internet Explorer 3.0的脚本中可用。使用document对象可以对HTML文档进行检查、修改或添加内容,并处理该文档内部的事件。在Web页面上,document对象可通过window对象的document属性引用,或者直接引用。
目前,在通过ElasticSearch、Slor等搜索引擎进行关键词搜索时,搜索引擎会分别返回关键词对应的高亮词集合和每个涉及到高亮词所在的段落或者高亮词所在的上下文。但是,如果关键词为英文并且原始文档数据是含有富文本标签,在通过英文关键字进行搜索时,由于原始的富文本文档存储时带有一些html标签,例如文本:<span>Ping an</span>,当搜索的关键字为英文“an”时,由于<span>标签中也含有an英文单词,因此在an前后添加高亮标签时会破坏原有<span>标签的完整性,会导致搜索出来的结果出现<sp,原始文本的富文本效果显示不出来,导致页面展示的搜索结果不正确,搜索的结果出现格式错误。
为解决上述问题,本申请提出了一种基于富文本的高亮方法,通过对搜索结果进行解析,得到富文本数据的文本内容,并对富文本数据的文本内容中的关键信息进行高亮,可以保证搜索结果中html标签的完整性,从而实现基于富文本的高亮显示,提高了搜索的精确度。
下面结合具体实施例,对本申请进行详细说明。
请参阅图2,图2是本申请实施例提供的一种基于富文本的高亮方法的应用场景示意图,如图2所示,基于富文本的高亮方法应用于搜索系统。该搜索系统包括终端设备210和服务器220。终端设备210和服务器220通过网络连接、终端设备210至少包括第一终端设备211和第二终端设备212,服务器220用于执行该基于富文本的高亮方法。终端设备210具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器220可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
请参阅图3,图3是本申请实施例提供的一种基于富文本的高亮方法的流程示意图,该方法可以应用于如图2所示的应用场景。如图3所示,该方法包括如下步骤:
S310、获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果。
其中,在不同的业务系统中,用户可以针对各种搜索提出不同要求。后台服务器可以将富文本数据导入数据库中,然后通过定时任务同步到搜索引擎中。搜索引擎可以包括但不限于ElasticSearch、Slor。搜索引擎可以对富文本数据进行创建索引和提取摘要,后台服务器提供RestFul接口,可以接收用户通过搜索引擎输入的关键信息,根据关键信息从索引数据库中查找带有关键信息的段落或上下文,并将带有关键字的段落或上下文作为第一搜索结果返回给终端设备。其中,具体返回是段落还是上下文,结合具体的业务场景,本申请实施例对此不做限定。
进一步地,所述第一关键信息可以为单个字符或字符串。所述第一关键信息的语言类型可以包括但不限于数字、中文、英文、日文、法文、德文等等。
可选的,所述第一搜索结果包括至少一个字符串数组;
上述S310、所述获取第一搜索结果,还包括如下步骤:
S11、将所述第一关键信息进行划分成至少一个关键子信息;
S12、查询与第一关键子信息匹配的第二内容,所述第一关键子信息为所述至少一个关键子信息中的任一关键子信息;
S13、将所述第二内容存储于第一字符串数组中,所述第一字符串数组为所述至少一个字符串数组中的任一字符串数组。
其中,后台服务器得到关键信息后可以对接搜索引擎,在第一关键信息包括多个词组或单词时,可以对搜索的第一关键信息进行分词,得到多个关键子信息。例如,第一关键信息为“I am Chinese”字符串时,可以将第一关键信息划分成3个关键子信息,第一个关键子信息为“I”,第二个关键子信息为“am”,第三个关键子信息为“Chinese”。然后对该多个关键子信息分别进行搜索,从索引数据库中查询带有该关键子信息的段落或者上下文。并将匹配关键子信息的段落或者上下文分别存放到字符串数组中。
S320、从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果。
其中,后台服务器通过接口从搜索引擎获取到第一搜索结果后,由于搜索的数据库中包括富文本数据,第一搜索结果中可能包含有富文本搜索的结果,因此,后台服务器可以从第一搜索结果中查找带有富文本的搜索结果,即从第一搜索结果中的每个字符串数组长查找字符串数组中是否包含html标签,将包含html标签的字符串数组作为所述第二搜索结果。
S330、对所述第二搜索结果进行解析,得到第一内容。
其中,在得到带有html标签的第二搜索结果后,需要将第二搜索结果中的html标签去掉,因此,对第二搜索结果进行解析,得到第一内容,所述第一内容为不包括html标签且包括所述至少一个关键子信息中任一关键子信息的文本内容。
可选的,所述对所述第二搜索结果进行解析,得到第一内容,包括:
遍历所述第二搜索结果,将所述第二搜索结果中的html标签转换为Jsoup可识别的Document对象;基于Elements对象操作,从所述Document对象中获取第一内容,所述第一内容为所述第二搜索结果中所述html标签的文本内容。
具体地,在第二搜索结果中的富文本数据中包括html标签时,可以将html标签转换为Jsoup可识别的Document对象,通过对Document对象执行Elements对象操作,从而获取html标签中的内容。例如,通过Element对象的textNodes()方法或ownText()方法得到两个标签之间的内容。
S340、基于所述第一关键信息对所述第一内容进行高亮。
可选的,所述基于所述第一关键信息对所述第一内容进行高亮,包括:
将所述第一内容与所述第一关键信息进行匹配,得到第二关键信息,所述第一关键信息包括所述第二关键信息;对所述第二关键信息进行高亮。
具体地,在得到富文本数据中的文本内容后,将文本内容与第一关键信息进行匹配,判断第二搜索结果的文本内容中是否包括第一关键信息中的内容。若第二搜索结果的文本内容中包括第一关键信息中的内容,则记录匹配上的第二关键信息,将第二搜索结果的文本内容中的第二关键信息进行高亮。在本申请实施例中,通过对富文本数据的文本内容中的关键信息进行高亮,能够保证富文本数据中html标签的完整性,提高搜索的精确度。
可选的,上述所述对所述第二关键信息进行高亮,还包括如下步骤:
S41、获取第二关键信息在所述第一内容中的起始位置和结束位置;
S42、基于所述起始位置和所述结束位置,分别将所述第一内容切割成至少一个子文本内容;
S43、对第一子文本内容添加高亮标签,所述第一子文本内容为包括所述第二关键信息的任一子文本内容;
S44、基于所述至少一个子文本内容的排列顺序,重新组装所述至少一个子文本内容。
具体地,在第二搜索结果的文本内容中包含第一关键信息中的内容时,可以查找第二关键信息中包括的内容在所述文本内容中的起始位置和结束位置。所述文本内容可以存储在字符串数组中,在所述文本内容与第一关键信息进行匹配时,若有第一关键信息中的内容存在所述文本内容中,则记录该内容在所述字符串数组中的索引位置。然后根据第二关键信息中的每个索引位置将所述文本内容进行切割,将文本内容切割成不同的小的字符串或字符串数组,然后将切割出包括第二关键信息内容的部分分别增加font标签的高亮词,最终在按照字符串的先后顺序,重新将切割的数据组装成新的文本内容。
举例说明,原始字符串:我是中国人,高亮词【我,国】,带有font标签的高亮词【<font color=’red’>我</font>,<font color=’red’>国</font>】,接下来就是切割,原始字符串就是被切割成“我”、“是中”、“国”、“人”四个字符串,切割时记录每个字符串各自的位置,例如“我”的索引位置为0,“是中”的索引位置为1-2,“国”的索引位置为3,“人”的索引位置为4,然后将0坐标的我替换成<font color=’red’>我</font>,把3坐标上的国替换成<font color=’red’>国</font>,最后按照01234的顺序重新组装字符串,结果为:<fontcolor=’red’>我</font>是中<font color=’red’>国</font>人。
在一些示例中,再将文本内容重新组装后,可以重新封装并将文本内容通过html展示,即能保证原有富文本的整体效果,页面在富文本的基础上实现高亮。
在一种可能的实施例中,所述方法还包括以下步骤:
S51、计算所述第二内容与所述第一关键子信息的匹配度。
其中,在第一搜索结果包括多个字符串数组时,即基于第一关键信息搜索返回的搜索结果包括多个段落或上下文时,可以根据搜索结果与第一关键信息的相关度对存储搜索结果的字符串数组进行排序,满足用户搜索的需求。
具体地,第二内容中可能包括一个或多个关键子信息,或者包括多个第一关键子信息。第二内容中包括的关键子信息越多,表示该第二内容与第一关键信息的匹配度越高,该第二内容对用户的重要度越高,因此可以将该第二内容尽可能的排列在前面供用户查看。所述匹配度可以通过第二内容中出现关键子信息的个数和第一关键子信息的次数来计算,即关键子信息的个数和/或第一关键子信息的次数越多,匹配度越高。
S52、基于所述匹配度和所述第一关键子信息对应的权值,确定所述第二内容对应的排列权重。
其中,用户在通过关键信息进行搜索时,可以根据关键信息中关键字的重要程度查找搜索结果,例如,在第一关键信息由多个词组组成时,第一个词组对用户的重要程度最高,第二个词组次之。依次类推;在第一关键信息有一句话组成时,这句话中的名词的重要程度比副词、形容词的重要程度高。因此,在将第一关键信息划分成至少一个关键子信息时,可以根据关键子信息的位置和/或词性确定关键子信息的权值。然后基于第二内容的匹配度和第二内容中包括的关键子信息对应的权值,确定第二内容对应的排列权重。具体地,将第二内容中出现关键子信息分别乘以对应的权重,再将第二内容中出现的关键子信息加权计算第二内容对应的排列权重。
S53、基于所述排列权重,确定所述第一字符串数组的排列位置。
在计算得到第一搜索结果中所有字符串数组的排列权重后,根据排列权重从小到大的顺序,对第一搜索结果中的字符串数组进行排列。
可选的,所述方法还包括:按照所述至少一个字符串数组中的每一字符串数组对应的排列位置,展示所述第一搜索结果。
其中,在对包括富文本的搜索结果进行高亮效果处理后,可以根据每一字符串数组的排列位置,将字符串数组发送给终端设备进行展示,从而使得与第一关键信息强相关的搜索结果排列在前面,方便用户查看。
可以看出,本申请实施例的基于富文本的高亮方法,通过获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;对所述第二搜索结果进行解析,得到第一内容;基于所述第一关键信息对所述第一内容进行高亮。本申请通过对搜索结果进行解析,得到富文本数据的文本内容,并对富文本数据的文本内容中的关键信息进行高亮,可以保证搜索结果中html标签的完整性,从而实现基于富文本的高亮显示,提高了搜索的精确度。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
请参阅图4a,图4a是本申请实施例提供的一种基于富文本的高亮装置300的功能单元组成框图,如图4a所示,该装置400包括获取单元410、查找单元420、解析单元430和高亮单元440,其中,
获取单元,用于获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;410
查找单元420,用于从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;
解析单元430,用于对所述第二搜索结果进行解析,得到第一内容;
高亮单元440,用于基于所述第一关键信息对所述第一内容进行高亮。
可选的,所述解析单元430具体用于:遍历所述第二搜索结果,将所述第二搜索结果中的html标签转换为Jsoup可识别的Document对象;基于Elements对象操作,从所述Document对象中获取第一内容,所述第一内容为所述第二搜索结果中所述html标签的文本内容。
可选的,所述高亮单元440具体用于:
将所述第一内容与所述第一关键信息进行匹配,得到第二关键信息,所述第一关键信息包括所述第二关键信息;对所述第二关键信息进行高亮。
可选的,在对所述第二关键信息进行高亮方面,所述高亮单元440具体用于:
获取第二关键信息在所述第一内容中的起始位置和结束位置;基于所述起始位置和所述结束位置,分别将所述第一内容切割成至少一个子文本内容;对第一子文本内容添加高亮标签,所述第一子文本内容为包括所述第二关键信息的任一子文本内容;基于所述至少一个子文本内容的排列顺序,重新组装所述至少一个子文本内容。
可选的,所述第一搜索结果包括至少一个字符串数组;
所述获取单元410具体用于:将所述第一关键信息进行划分成至少一个关键子信息;查询与第一关键子信息匹配的第二内容,所述第一关键子信息为所述至少一个关键子信息中的任一关键子信息;将所述第二内容存储于第一字符串数组中,所述第一字符串数组为所述至少一个字符串数组中的任一字符串数组。
可选的,如图4b所示,是本申请实施例提供的另一种基于富文本的高亮装置400的功能单元组成框图,所述装置400还包括:计算单元450和确定单元460;
所述计算单元450,用于计算所述第二内容与所述第一关键子信息的匹配度;
所述确定单元460,用于基于所述匹配度和所述第一关键子信息对应的权值,确定所述第二内容对应的排列权重;
所述确定单元460,还用于基于所述排列权重,确定所述第一字符串数组的排列位置。
可选的,所述装置400还包括展示单元470;
所述展示单元470,用于按照所述至少一个字符串数组中的每一字符串数组对应的排列位置,展示所述第一搜索结果。
可以看出,本申请实施例提供一种基于富文本的高亮装置,通过获取单元获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;查找单元从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;解析单元对所述第二搜索结果进行解析,得到第一内容;高亮单元基于所述第一关键信息对所述第一内容进行高亮,可以保证搜索结果中html标签的完整性,从而实现基于富文本的高亮显示,提高了搜索的精确度。
可以理解的是,本申请实施例的基于富文本的高亮装置的各程序模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
请参阅图5,图5是本申请实施例提供的一种计算机设备的结构示意图,如5图所示,该计算机设备包括存储器、通信接口和处理器,其中,该计算机设备还可以包括通信总线,所述处理器、通信接口和存储器之间可以通过总线相互连接。
其中,上述处理器,用于执行所述存储器上所存放的程序时,实现以下步骤:
获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;
从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;
对所述第二搜索结果进行解析,得到第一内容;
基于所述第一关键信息对所述第一内容进行高亮。
进一步地,处理器可以是一个通用中央处理器(Central Processing Unit,CPU)或多个CPU,单块或多块图形处理器(Graphics Processing Unit,GPU),微处理器,特定应用集成电路(Application Specific Integrated Circuit,ASIC),或一个或多个用于控制本发明方案程序执行的集成电路。
存储器可以是只读存储器(Read Only Memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(Random Access Memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
在一些示例中,存储器可以是独立存在,通信接口和通信总线与处理器相连接。存储器也可以和处理器集成在一起。通信总线在上述组件之间传送信息。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、终端设备或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、ROM、RAM、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种基于富文本的高亮方法,其特征在于,所述方法包括:
获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;
从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;
对所述第二搜索结果进行解析,得到第一内容;
基于所述第一关键信息对所述第一内容进行高亮。
2.根据权利要求1所述的方法,其特征在于,所述对所述第二搜索结果进行解析,得到第一内容,包括:
遍历所述第二搜索结果,将所述第二搜索结果中的html标签转换为Jsoup可识别的Document对象;
基于Elements对象操作,从所述Document对象中获取第一内容,所述第一内容为所述第二搜索结果中所述html标签的文本内容。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一关键信息对所述第一内容进行高亮,包括:
将所述第一内容与所述第一关键信息进行匹配,得到第二关键信息,所述第一关键信息包括所述第二关键信息;
对所述第二关键信息进行高亮。
4.根据权利要求3所述的方法,其特征在于,所述对所述第二关键信息进行高亮,包括:
获取第二关键信息在所述第一内容中的起始位置和结束位置;
基于所述起始位置和所述结束位置,分别将所述第一内容切割成至少一个子文本内容;
对第一子文本内容添加高亮标签,所述第一子文本内容为包括所述第二关键信息的任一子文本内容;
基于所述至少一个子文本内容的排列顺序,重新组装所述至少一个子文本内容。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述第一搜索结果包括至少一个字符串数组;
所述获取第一搜索结果,包括:
将所述第一关键信息进行划分成至少一个关键子信息;
查询与第一关键子信息匹配的第二内容,所述第一关键子信息为所述至少一个关键子信息中的任一关键子信息;
将所述第二内容存储于第一字符串数组中,所述第一字符串数组为所述至少一个字符串数组中的任一字符串数组。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
计算所述第二内容与所述第一关键子信息的匹配度;
基于所述匹配度和所述第一关键子信息对应的权值,确定所述第二内容对应的排列权重;
基于所述排列权重,确定所述第一字符串数组的排列位置。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
按照所述至少一个字符串数组中的每一字符串数组对应的排列位置,展示所述第一搜索结果。
8.一种基于富文本的高亮装置,其特征在于,所述装置包括:
获取单元,用于获取第一搜索结果,所述第一搜索结果为基于第一关键信息搜索得到的搜索结果;
查找单元,用于从所述第一搜索结果中查找第二搜索结果,所述第二搜索结果为包括富文本的搜索结果;
解析单元,用于对所述第二搜索结果进行解析,得到第一内容;
高亮单元,用于基于所述第一关键信息对所述第一内容进行高亮。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器、存储器、通信接口,以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-7任一项所述的方法中的步骤的指令。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储用于数据交换的计算机程序,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011266905.5A CN112380337A (zh) | 2020-11-13 | 2020-11-13 | 基于富文本的高亮方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011266905.5A CN112380337A (zh) | 2020-11-13 | 2020-11-13 | 基于富文本的高亮方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112380337A true CN112380337A (zh) | 2021-02-19 |
Family
ID=74583789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011266905.5A Pending CN112380337A (zh) | 2020-11-13 | 2020-11-13 | 基于富文本的高亮方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112380337A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116431756A (zh) * | 2023-04-18 | 2023-07-14 | 浪潮智慧科技有限公司 | 一种基于Vue的搜索文本高亮显示方法、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004021746A (ja) * | 2002-06-18 | 2004-01-22 | Dainippon Printing Co Ltd | 検索結果文字列表示方法およびシステム |
US20160078102A1 (en) * | 2014-09-12 | 2016-03-17 | Nuance Communications, Inc. | Text indexing and passage retrieval |
CN105653738A (zh) * | 2016-03-01 | 2016-06-08 | 北京百度网讯科技有限公司 | 基于人工智能的搜索结果播报方法和装置 |
-
2020
- 2020-11-13 CN CN202011266905.5A patent/CN112380337A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004021746A (ja) * | 2002-06-18 | 2004-01-22 | Dainippon Printing Co Ltd | 検索結果文字列表示方法およびシステム |
US20160078102A1 (en) * | 2014-09-12 | 2016-03-17 | Nuance Communications, Inc. | Text indexing and passage retrieval |
CN105653738A (zh) * | 2016-03-01 | 2016-06-08 | 北京百度网讯科技有限公司 | 基于人工智能的搜索结果播报方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116431756A (zh) * | 2023-04-18 | 2023-07-14 | 浪潮智慧科技有限公司 | 一种基于Vue的搜索文本高亮显示方法、设备及介质 |
CN116431756B (zh) * | 2023-04-18 | 2023-12-01 | 浪潮智慧科技有限公司 | 一种基于Vue的搜索文本高亮显示方法、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sun et al. | Dom based content extraction via text density | |
US7730013B2 (en) | System and method for searching dates efficiently in a collection of web documents | |
US7269544B2 (en) | System and method for identifying special word usage in a document | |
US7526474B2 (en) | Question answering system, data search method, and computer program | |
US8606778B1 (en) | Document ranking based on semantic distance between terms in a document | |
JP5148278B2 (ja) | テキスト分割のために言語を選択する方法およびシステム | |
US20150067476A1 (en) | Title and body extraction from web page | |
US20050149851A1 (en) | Generating hyperlinks and anchor text in HTML and non-HTML documents | |
US20160292153A1 (en) | Identification of examples in documents | |
JPWO2010047286A1 (ja) | 検索システム、検索方法およびプログラム | |
KR20160042896A (ko) | 마이닝된 하이퍼링크 텍스트 스니펫을 통한 이미지 브라우징 | |
CN109634436B (zh) | 输入法的联想方法、装置、设备及可读存储介质 | |
KR20210097347A (ko) | 인공지능 기반 이미지 검색 방법 및 장치 | |
CN109165373B (zh) | 一种数据处理方法及装置 | |
US20110131214A1 (en) | Information retrieval method, computer readable medium and information retrieval apparatus | |
JP4883644B2 (ja) | リコメンド装置、リコメンドシステム、リコメンド装置の制御方法、およびリコメンドシステムの制御方法 | |
CN112380337A (zh) | 基于富文本的高亮方法及装置 | |
KR20020022977A (ko) | 인터넷 자원의 도메인화와 확장 사이트맵을 이용한정보검색 및 브라우징방법 | |
CN104778232A (zh) | 一种基于长查询的搜索结果的优化方法和装置 | |
JP2001265774A (ja) | 情報検索方法、装置、および情報検索プログラムを記録した記録媒体、ハイパーテキスト情報検索システム | |
CN108319586B (zh) | 一种信息提取规则的生成和语义解析方法及装置 | |
CN111339457A (zh) | 用于从网页抽取信息的方法和设备及存储介质 | |
Saravanan et al. | Extraction of Core Web Content from Web Pages using Noise Elimination. | |
WO2014049310A2 (en) | Method and apparatuses for interactive searching of electronic documents | |
KR20110094563A (ko) | 웹 문서의 링크-키워드 관계를 이용한 관련어 검색 방법 및 검색 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |