[发明专利]一种模式匹配方法无效

专利信息
申请号: 200910195465.6 申请日: 2009-09-10
公开(公告)号: CN102024000A 公开(公告)日: 2011-04-20
发明(设计)人: 郑骏;胡文心;蔡建华 申请(专利权)人: 华东师范大学
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 上海科盛知识产权代理有限公司 31225 代理人: 赵志远
地址: 200062 上*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 模式 匹配 方法
【说明书】:

技术领域

发明涉及串匹配技术,特别是涉及一种模式匹配方法。

背景技术

KMP匹配方法是串匹配中效率最高的方法,它充分利用模式信息,使得模式在跟主串匹配过程中主串的指针不回溯,从而具有较高的匹配速度,并在各种领域中有广泛应用。然而,KMP方法仍存在着主串与模式多个相同字符重复比较的缺陷。

发明内容

本发明所要解决的技术问题就是为了克服上述现有技术存在的缺陷而提供一种模式匹配方法。

本发明的目的可以通过以下技术方案来实现:一种模式匹配方法,其特征在于,包括:

对匹配文本A设两个指针,模式B和模式B’分别设一个指针,匹配文本A首端和模式B首端对齐,文本A末端和模式B’末端对齐;模式B指针起始位置为模式B的首端,模式B’指针起始位置为模式B’的末端,匹配文本A两指针起始位置为文本首端和文本的末端;匹配过程中,模式B、模式B’分别和文本交替向中间匹配,当匹配过程中出现失配时,根据模式B、B’已经得到的部分匹配结果的将模式B、B’交替向中间滑动后继续比较。

该方法对模式B、B’已经得到的部分匹配结果进行Q(r)值计算,以使模式B、B’交替向中间滑动。

所述的Q(r)值计算在下式条件时:

1(0)2+1iA(0),]]>

包括以下步骤:

a1)i’=B(0),j’=0,Q(B(0))=0;

b1)若i’=1,则执行步骤d1;否则,执行步骤c1;

c1)若j’=B(0)或B(i’)=B(j’),则i’=i’-1,j’=j’-1,Q(i’)=j’,执行步骤b1;否则,j’=Q(j’),执行步骤c1;

d)结束。

所述的Q(r)值计算在下式条件时:

1iA(0)2,]]>

包括以下步骤:

a2)i=1,j=0,Q(1)=0;

b2)若i=m,则执行步骤d2;否则,执行步骤c2;

c2)若j=0或(B(i)=B(j)),则j=j+1,i=i+1,Q(i)=j,执行步骤b2;否则,j=Q(j),执行步骤c2;

d2)结束。

与现有技术相比,本发明避免了字符的重复匹配,减少了比较次数,提高了匹配效率。

具体实施方式

下面对本发明作进一步说明。

一种模式匹配方法,包括:

对匹配文本A设两个指针,模式B和模式B’分别设一个指针,匹配文本A首端和模式B首端对齐,文本A末端和模式B’末端对齐;模式B指针起始位置为模式B的首端,模式B’指针起始位置为模式B’的末端,匹配文本A两指针起始位置为文本首端和文本的末端;匹配过程中,模式B、模式B’分别和文本交替向中间匹配,当匹配过程中出现失配时,根据模式B、B’已经得到的部分匹配结果的将模式B、B’交替向中间滑动后继续比较。

该方法对模式B、B’已经得到的部分匹配结果进行Q(r)值计算,以使模式B、B’交替向中间滑动。

所述的Q(r)值计算在下式条件时:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东师范大学,未经华东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200910195465.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top