[发明专利]一种在任意文本中匹配识别海量关键词的方法有效
申请号: | 201811558241.2 | 申请日: | 2018-12-19 |
公开(公告)号: | CN109783607B | 公开(公告)日: | 2023-04-25 |
发明(设计)人: | 苗阳 | 申请(专利权)人: | 南京莱斯信息技术股份有限公司 |
主分类号: | G06F16/33 | 分类号: | G06F16/33;G06F40/289 |
代理公司: | 江苏圣典律师事务所 32237 | 代理人: | 贺翔 |
地址: | 210000 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 任意 文本 匹配 识别 海量 关键词 方法 | ||
1.一种在任意文本中匹配识别海量关键词的方法,其特征在于,包括以下步骤,
(1)、关键词库设立:
建立一级词库,把原始词库作为二级词库,用以减少一级词库中的词条数量,使一级词库能直接装载到计算机内存中;
(2)、关键词的匹配和识别,包括:
(2.1)、输入文本X,并定位到文本X的起始位置;
(2.2)、自起始位置读取文本X中的一个字符C,以字符C为关键字符Key在一级词库中查找,若不存在该字符C则重新读取字符C的下一个字符再在一级词库中查找直至找到一级词库中存在对应的字符后,进入步骤(2.3);
(2.3)、取一词级库中Key对应的长度L和尾字符T,依据长度L和尾字符T,判断文本X剩余长度是否大于等于L,并且当前位置+L处的字符是否等于T,如不匹配则回到步骤(2.2),如匹配则进入步骤(2.4);
(2.4)、从文本X当前位置取L长度子串S,到二级词库中进行完整匹配;若在二级词库中未找到匹配则回到步骤(2.2),如在二级词库中找到匹配则进入步骤(2.5);
(2.5)、记录匹配结果,并直接跳过L长度;
采用字库并行化处理:
步骤(1)中,将原始关键词库物理分割为多个二级词库;
在步骤(2)中,由主线程将待处理的文本复制为多份,依据二级库的个数,启动多个线程同时进行处理,每个线程扫描独立的文本副本,使用不同的二级关键词库,互不干扰,主线程等待每个处理线程完成后,获取结果并统一合并处理结果;
二级词库在计算机内存中采用LevelDB的K-V型存储机制关键词库存储方式。
2.根据权利要求1所述的在任意文本中匹配识别海量关键词的方法,其特征在于,所述步骤(2.2)中,若字符C的位置已经到文本X中的结尾,则结束匹配和识别并输出匹配和识别结果。
3.根据权利要求1或2所述的在任意文本中匹配识别海量关键词的方法,其特征在于,步骤(1)中,取关键字词条的首、尾字符和总长度,生成对应一级词库条目。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京莱斯信息技术股份有限公司,未经南京莱斯信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811558241.2/1.html,转载请声明来源钻瓜专利网。