[发明专利]一种模式匹配方法及装置无效
| 申请号: | 200610141484.7 | 申请日: | 2006-09-29 |
| 公开(公告)号: | CN101154225A | 公开(公告)日: | 2008-04-02 |
| 发明(设计)人: | 张若渊;阙开良 | 申请(专利权)人: | 西门子公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京市柳沈律师事务所 | 代理人: | 张亮 |
| 地址: | 德国*** | 国省代码: | 德国;DE |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明涉及计算机领域,具体的讲是一种模式匹配方法及装置,为了解决在模式的多个关键字之间不连续的模式匹配问题,本发明方法将多个不连续的关键字分段,用布尔型映射表分别记录每个模式中出现同一关键字的信息,经过本发明的算法获得与待处理字符串匹配的模式。经过简单的算法使计算机对不连续关键字的模式进行识别,成本低,并且处理速度很快。 | ||
| 搜索关键词: | 一种 模式 匹配 方法 装置 | ||
【主权项】:
1.一种模式匹配方法,其特征在于,分段器根据模式中的通配符将模式按顺序分段,每一段为一个元关键字,将具有相同段数n的m个模式作为一个模式集合,其中n=2,3...,m=1,2,3...;在一个模式集合中,每一个模式包含至少一个元关键字,针对每个元关键字建立一个映射表,记录包含该元关键字的模式,该映射表由n个映射串BM1...BMn构成,该映射表中的n个映射串与一个模式中的n个段一一对应,所述每一个映射串都由m个布尔型数值组成;在每一个所述映射串的第x位标记第x个模式的相应段中是否含有该元关键字,其中x为大于等于1,小于等于m的整数;编译器根据所述分段后的元关键字生成关键字树,由状态机在所述关键字树的节点中匹配待处理字符串,找出所述待处理字符串中的所有元关键字,串运算变量CBM1...CBMn中的每一个串运算变量都由m个布尔型数值组成,初始化所有串运算变量CBM1...CBMn各位的布尔型数值为0;按照下列公式处理匹配的所述待处理字符串中的每一个元关键字:CBM1=CBM1|BM1,更新CBM1;CBMi=CBMi-1&BMi|CBMi,更新CBMi,其中“&”为“与”操作,“|”为“或”操作,i为大于等于2,小于等于n的整数,处理每个元关键字时的BM1...BMn为该元关键字映射表中的映射串;在处理过程中,CBM1...CBMn为处理上一元关键字步骤中更新后的CBM1...CBMn;处理完所述待处理字符串的所有关键字,将CBM1...CBMn进行“与”操作,最后由布尔型数值构成的结果代表了与所述待处理字符串相匹配的模式编号,输出至少一个模式编号。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西门子公司,未经西门子公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200610141484.7/,转载请声明来源钻瓜专利网。





