[发明专利]正则表达式的匹配方法、装置、电子设备及存储介质有效
申请号: | 201911421987.3 | 申请日: | 2019-12-31 |
公开(公告)号: | CN111177491B | 公开(公告)日: | 2023-08-25 |
发明(设计)人: | 王彬;覃永靖;程诗尧;马江波 | 申请(专利权)人: | 奇安信科技集团股份有限公司;奇安信网神信息技术(北京)股份有限公司 |
主分类号: | G06F16/903 | 分类号: | G06F16/903;G06F16/951;G06F16/2455 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 郑朝然 |
地址: | 100088 北京市西城区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 正则 表达式 匹配 方法 装置 电子设备 存储 介质 | ||
1.一种正则表达式的匹配方法,其特征在于,包括:
抽取用于标识每一正则表达式的字符串,并将每一字符串划分为定长子串;
获取从网络抓取的待匹配字符串,将与所述待匹配字符串相匹配的定长子串作为目标定长子串;
根据所述目标定长子串的顺序和内容,确定与所述待匹配字符串相匹配的目标正则表达式,根据目标正则表达式判定所述待匹配字符串的安全性;
其中,对用于标识每一正则表达式的字符串,若正则表达式忽略字母大小写,则将字符串中的大写字母转换为小写字母;
若正则表达式中存在非字节码,则将非字节码的字符转换为通过字节码表示的字符;
若字符串中存在同一字符连续出现的部分,则将同一字符连续出现的部分替换为单次出现的所述同一字符;
若字符串中存在转义字符,则保留所述转义字符中的16进制形式字符、8进制形式字符和无效转义字符。
2.根据权利要求1所述的正则表达式的匹配方法,其特征在于,所述抽取用于标识每一正则表达式的字符串,并将每一字符串划分为定长子串,包括:
对每一正则表达式的字符串,循环执行字符串划分操作,直到所述字符串中,未执行字符串划分操作的剩余字符的长度小于定长子串的长度;
其中,所述字符串划分操作包括:
判断所述字符串的剩余字符中是否存在“或”操作连接的字符,若否,则对剩余字符依次划分定长子串,设置后一次划分的定长子串的索引偏移,等于前一次划分的定长子串的索引偏移加1;
若是,则对“或”操作之前的字符依次划分定长子串,且设置后一次划分的定长子串的索引偏移,等于前一次划分的定长子串的索引偏移加1,并在对“或”操作之前的字符依次划分定长子串之后,对“或”操作连接的各字符串同时划分定长子串,且设置每次划分的各定长子串的索引偏移相同,且等于前一次划分的定长子串的索引偏移加1;
其中,设置对字符串第一次划分的定长子串的索引偏移为0。
3.根据权利要求1所述的正则表达式的匹配方法,其特征在于,所述获取从网络抓取的待匹配字符串,将与所述待匹配字符串相匹配的定长子串作为目标定长子串,包括:
获取从网络抓取的待匹配字符串,依次按照定长子串的长度扫描所述待匹配字符串,将与所扫描的字符串相同的定长子串作为与所述待匹配字符串相匹配的定长子串作为目标定长子串。
4.根据权利要求2所述的正则表达式的匹配方法,其特征在于,所述根据所述目标定长子串的顺序和内容,确定与所述待匹配字符串相匹配的目标正则表达式,包括:
建立表示正则表达式匹配进度的映射关系表,所述映射关系表包括与至少一个目标定长子串匹配的正则表达式,以及与正则表达式对应的匹配进度值;
对任一目标定长子串,判断映射关系表中是否存在包含所述目标定长子串的正则表达式;
若不存在,则获取索引偏移为0的定长子串为所述目标定长子串的正则表达式,将获取的正则表达式添加到所述映射关系表中,且设置匹配进度值为0;
若存在,则获取包含所述目标定长子串的正则表达式,作为候选正则表达式,若在候选正则表达式中所述目标定长子串的索引偏移减1后,等于所述候选正则表达式对应的匹配进度值,则设置所述候选正则表达式的匹配进度值等于当前的匹配进度值加1;
若检测到所述候选正则表达式当前的匹配进度值,等于所述待匹配字符串所包含的目标定长子串的总数减1,则将所述候选正则表达式作为与所述待匹配字符串相匹配的目标正则表达式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于奇安信科技集团股份有限公司;奇安信网神信息技术(北京)股份有限公司,未经奇安信科技集团股份有限公司;奇安信网神信息技术(北京)股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911421987.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:多标记业务处理的方法及装置
- 下一篇:脉管封闭装置