[发明专利]一种正则表达式匹配的方法及装置有效
申请号: | 201010580832.7 | 申请日: | 2010-12-09 |
公开(公告)号: | CN102142009A | 公开(公告)日: | 2011-08-03 |
发明(设计)人: | 徐敏锋;付饶;时立峰;段国莲;程贵锋 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京三友知识产权代理有限公司 11127 | 代理人: | 戴云霓 |
地址: | 518129 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明实施例提供了一种正则表达式匹配的方法及装置,该方法包括:输入待匹配报文及DFA状态表,DFA状态表包括状态迁移表,其包括正则表达式匹配过程中的所有状态地址和各个状态之间的迁移关系;判断当前状态对应的数据类型,包括单个字符Char型和多个字符Str型,Str型对应的数据为连续的多个字符;若是Str型,则将待匹配报文中当前状态的多个字符值与匹配条件进行匹配处理,当匹配时,迁移至符合匹配条件的下一状态;若是Char型,则将待匹配报文中当前状态的单个字符值与匹配条件进行匹配处理,当匹配时,迁移至符合匹配条件的下一状态;当下一状态为接受态时,结束匹配过程并输出匹配成功结果。该方法匹配速度快、效率高,DFA表项占用的存储空间小。 | ||
搜索关键词: | 一种 正则 表达式 匹配 方法 装置 | ||
【主权项】:
一种正则表达式匹配的方法,其特征在于,所述方法包括:输入待匹配报文及确定性有限自动机DFA状态表,所述DFA状态表包括状态迁移表,所述状态迁移表中包括正则表达式匹配过程中的所有状态地址和各个状态之间的迁移关系,所述迁移关系包括匹配条件及符合匹配条件的下一状态;判断当前状态对应的数据类型,所述数据类型包括单个字符Char型和多个字符Str型,所述Str型对应的数据为连续的多个字符;如果当前状态对应的数据类型是Str型,则将待匹配报文中当前状态的多个字符值与匹配条件进行匹配处理,当匹配时,迁移至所述符合匹配条件的下一状态;如果当前状态对应的数据类型是Char型,则将待匹配报文中当前状态的单个字符值与匹配条件进行匹配处理,当匹配时,迁移至所述符合匹配条件的下一状态;当所述下一状态为接受态时,结束匹配过程并输出匹配成功结果。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201010580832.7/,转载请声明来源钻瓜专利网。