一种对正则式DFA分组的方法技术

技术编号:6707533 阅读:293 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种对正则式DFA分组的方法。对所有的正则式两两分组,生成两两之间的状态和;将所有正则式置于第一组,置失败标志为0;对步骤A的状态和进行排序,在第一组中找出两两之和最大的正则式a;将正则式a置于第二组;对第二组的正则式生成DFA,如果在DFA状态数目约束条件下生成成功,判断失败标志,如果为0,转到步骤C,如果为1,跳出;如果失败则将a置成第三组,置失败标志为1,转到步骤C;循环操作步骤C、D、E,直到依次所有正则式都尝试结束;将第三组中的正则式放到第一组中,尝试对第一组生成DFA,若成功,则分组结束,若失败则可对第三组重新分组,转到步骤A。本发明专利技术利用探测淘汰策略,实现了对正则式的最少分组,实现了在DFA状态数目约束下,生成DFA状态的最大化,可以实现对正则式的高效匹配。

【技术实现步骤摘要】

【技术保护点】
1.一种对正则式DFA分组的方法,其特征在于:包括以下步骤:A、对所有的正则式两两分组,生成两两之间的状态和;B、将所有正则式置于第一组,置失败标志为0;C、对步骤A的状态和进行排序,在第一组中找出两两之和最大的正则式a;D、将正则式a置于第二组;E、对第二组的正则式生成DFA,如果在DFA状态数目约束条件下生成成功,判断失败标志,如果为0,转到步骤C,如果为1,跳出;如果失败则将a置成第三组,置失败标志为1,转到步骤C;F、循环操作步骤C、D、E,直到依次所有正则式都尝试结束;G、将第三组中的正则式放到第一组中,尝试对第一组生成DFA,若成功,则分组结束,若失败则可对第三组重新分组,转到步骤A。

【技术特征摘要】

【专利技术属性】
技术研发人员:李锋伟刘朝辉刘灿刘兴奎
申请(专利权)人:曙光信息产业北京有限公司
类型:发明
国别省市:11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1