[发明专利]一种字符串匹配方法、系统、存储介质及装置有效
申请号: | 201910466313.9 | 申请日: | 2019-05-31 |
公开(公告)号: | CN110321463B | 公开(公告)日: | 2022-01-21 |
发明(设计)人: | 黄昆;陈雪琳;谢高岗 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F16/903 | 分类号: | G06F16/903 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 祁建国;梁挥 |
地址: | 100080 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提出一种字符串匹配方法,包括:首先,构建一个全局迁移表,存储同一输入字符的相同目的状态的迁移边;其次,构建每个状态的本地迁移表,针对每个输入字符,存储与全局迁移表中不同目的状态的迁移边,并采用比特位图进一步压缩本地迁移边表。全局迁移表的构建时间复杂度为O(M×N),M表示DFA状态总数,N表示字母表中唯一字符个数,因此RDFA比已有算法的构建时间少;同时,全局迁移表减少了大量冗余迁移边,RDFA显著压缩DFA存储空间;针对每个读入字符,RDFA仅需要查找当前状态的本地迁移表和全局迁移表,从而提高字符串匹配吞吐量。 | ||
搜索关键词: | 一种 字符串 匹配 方法 系统 存储 介质 装置 | ||
【主权项】:
1.一种字符串匹配方法,其特征在于,包括:步骤1、根据预设的特征字符串集构建对应的DFA状态迁移表,针对该状态迁移表中每一个输入字符,通过遍历其所有源状态,查找出目的状态相同数目最多的迁移边,将该迁移边存储在全局迁移表中;步骤2、为该状态迁移表中每一个状态构建本地迁移表,该本地迁移表存储与全局迁移表中目的状态不同的迁移边,并为每一个状态构建比特位图,该比特位图中每一比特用于记录该本地迁移表的迁移边目的状态与全局迁移表的目的状态是否相同,若相同,将比特置“0”,否则置“1”;步骤3、获取待匹配字符串,将该待匹配字符串中字符依次作为待匹配字符,通过查询当前状态的比特位图,判断该待匹配字符在比特位图中对应的比特位是否为1,若是,则统计该对应的比特位以前“1”的个数,作为目的状态在本地迁移表中的位置,根据该位置查询该本地迁移表,得到目的状态,否则直接查询该全局迁移表,得到目的状态;步骤4、输出与所有目的状态对应的匹配字符串作为该待匹配字符串的匹配结果。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910466313.9/,转载请声明来源钻瓜专利网。