CN105988777A - 一种规则匹配方法及装置 - Google Patents
一种规则匹配方法及装置 Download PDFInfo
- Publication number
- CN105988777A CN105988777A CN201510040911.1A CN201510040911A CN105988777A CN 105988777 A CN105988777 A CN 105988777A CN 201510040911 A CN201510040911 A CN 201510040911A CN 105988777 A CN105988777 A CN 105988777A
- Authority
- CN
- China
- Prior art keywords
- rule
- coding
- value code
- collection
- true collection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开一种规则匹配方法及装置,所述方法包括:根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。与现有技术相比,本发明将规则的解析和匹配分开处理,提高了规则匹配的效率。
Description
技术领域
本发明涉及数据处理领域,具体涉及一种规则匹配方法及装置。
背景技术
传统意义上,规则匹配就是用事实集与规则中的条件进行匹配,当所述事实集与任意一个规则的条件匹配时,则可以执行该规则中的操作。
目前,在接收到用户的事实集后,主要采用类似“解释器”的数据处理方式。即规则解析和匹配逐条同时进行,也就是说,每次取出一个规则,需要按规则语言的语法翻译为程序代码(如表达式和形参),再将事实集(作为实参)代入并计算出结果,如此往复,直到匹配完所有规则。
可见,上述解析和匹配逐条同时进行的规则匹配方式处理效率较低。
发明内容
有鉴于此,本发明提供了一种规则匹配方法及装置。
本发明提供了一种规则匹配方法,所述方法包括:
根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;
当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;
当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。
优选地,所述根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码,包括:
根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的二值码;
相应的,所述当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码,包括:
当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的二值码。
优选地,所述方法还包括:
将各个规则中条件的各个子条件分别设置为所述第一编码规则中的编码模式;
预先在所述第一编码规则中设置二值码编码模板,所述二值码编码模板中包括预设个数的编码位,各个编码位具有与其唯一对应的编码模式,且所述二值码编码模板中的各个编码位之间具有预设的顺序关系。
优选地,所述当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的二值码,包括:
当接收到任一事实集时,将所述第一编码规则中的编码模式与所述事实集中的各个事实元素进行比较,当任一事实元素满足所述编码模式时,将所述编码模式对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到所述事实集的二值码;
相应的,所述根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的二值码,包括:
将各条规则中的各个子条件对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到各个规则对应的二值码。
优选地,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配之前,还包括:
根据所述事实集的二值码,确定所述事实集对应的可匹配规则范围;
确定属于所述可匹配规则范围的规则对应的可匹配二值码;
相应的,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配,具体为:
判断所述事实集的二值码是否与任一可匹配二值码符合预设的匹配条件,当所述事实集的二值码与任一可匹配二值码符合预设的匹配条件时,确定所述事实集与所述可匹配二值码对应的规则匹配。
优选地,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配之前,还包括:
将所述事实集的二值码中编码为0的编码位不变,编码为1的编码位进行排列,得到所述事实集对应的可匹配二值码;
确定属于所述可匹配二值码的二值码对应的规则;
相应的,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配,具体为:
确定所述属于所述可匹配二值码的二值码对应的规则与所述事实集匹配。
本发明还提供了一种规则匹配装置,所述装置包括:
第一编码模块,用于根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;
第二编码模块,用于当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;
第一确定模块,用于当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。
优选地,所述第一编码模块,具体用于根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的二值码;
相应的,所述第二编码模块,具体用于当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的二值码。
优选地,所述装置还包括:
第一设置模块,用于将各个规则中条件的各个子条件分别设置为所述第一编码规则中的编码模式;
第二设置模块,用于预先在所述第一编码规则中设置二值码编码模板,所述二值码编码模板中包括预设个数的编码位,各个编码位具有与其唯一对应的编码模式,且所述二值码编码模板中的各个编码位之间具有预设的顺序关系。
优选地,所述第二编码模块,包括:
比较子模块,用于当接收到任一事实集时,将所述第一编码规则中的编码模式与所述事实集中的各个事实元素进行比较;
编码子模块,用于当任一事实元素满足所述编码模式时,将所述编码模式对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到所述事实集的二值码;
相应的,所述第一编码模块,具体用于将各条规则中的各个子条件对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到各个规则对应的二值码。
优选地,所述装置,还包括:
第二确定模块,用于根据所述事实集的二值码,确定所述事实集对应的可匹配规则范围;
第三确定模块,用于确定属于所述可匹配规则范围的规则对应的可匹配二值码;
相应的,所述第一确定模块,包括:
判断子模块,用于判断所述事实集的二值码是否与任一可匹配二值码符合预设的匹配条件;
确定子模块,用于当所述事实集的二值码与任一可匹配二值码符合预设的匹配条件时,确定所述事实集与所述可匹配二值码对应的规则匹配。
优选地,所述装置,还包括:
排列模块,用于将所述事实集的二值码中编码为0的编码位不变,编码为1的编码位进行排列,得到所述事实集对应的可匹配二值码;
第四确定模块,用于确定属于所述可匹配二值码的二值码对应的规则;
相应的,所述第一确定模块,具体用于确定所述属于所述可匹配二值码的二值码对应的规则与所述事实集匹配。
本发明首先根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。本发明预先为各条规则编码,当接收到事实集后,直接将编码后的事实集与各条规则的编码进行匹配。与现有技术相比,本发明将规则的解析和匹配分开处理,提高了规则匹配的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的规则匹配的方法流程图;
图2为可匹配规则的范围为多个可匹配规则范围组成时的可匹配规则范围确定示意图;
图3为本发明实施例提供的规则匹配的装置结构示意图;
图4为本发明提供的服务器的部分结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参考图1,为本发明实施例提供的规则匹配方法流程图,所述方法具体可以包括:
S101:根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码。
本实施例中,预先设置第一编码规则,其中,第一编码规则用于为规则中的条件编码。具体的,所述第一编码规则可以根据用户的需求进行设置,如所述第一编码规则可以为将各个规则中的条件编码为二值码的编码规则,也可以为将各个规则中的条件编码为十进制数的编码规则。
实际应用中,在第一编码规则设置完成后,根据所述第一编码规则,预先为所有规则中的条件编码,确定各个规则对应的编码。
S102:当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码。
本实施例中,当接收到任意一个事实集时,根据预设的所述第一编码规则,为所述事实集编码,最终确定所述事实集的编码。
值得注意的是,本实施例中规则匹配的目的是为接收到的事实集确定与其匹配的规则。由于所述事实集与各个规则的编码规则均为预设的第一编码规则,所以,本实施例只需要确定所述事实集的编码与哪条规则对应的编码匹配,即可确定与所述事实集匹配的规则。
S103:当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。
本实施例中,当所述事实集完成编码后,将所述事实集与各个规则对应的编码进行匹配,当所述事实集的编码与某个规则对应的编码符合预设的匹配条件时,将所述规则确定为所述事实集匹配成功的规则。
一种优选地实施方式中,由于二值码仅由数字0,1组成,所以为了提高规则匹配的效率,本实施例可以将第一编码规则设置为将各个规则的条件编码为二值码,将事实集编码为二值码的编码规则。
实际应用中,在所述第一编码规则为二值码的编码规则的情况下,本实施例首先需要设置所述第一编码规则中的编码模式,具体的,将各个规则中条件的各个子条件分别设置为所述第一编码规则中的编码模式。如表1,为编码模式的设置表,其中,所述第一编码规则中的编码模式由所有规则中条件的所有子条件组成。所述编码模式由属性(如age)、操作符(如>)、阈值(如10)组成,并为各个编码模式设置的编码为1,也就是说,满足各个编码模式时编码为1。
表1
其次,本实施例在设置所述第一编码规则的编码模式后,还需要根据所述编码模式设置所述第一编码规则中的二值码编码模板。其中,所述二值码编码模板中包括预设个数的编码位,各个编码位具有与其唯一对应的编码模式,且所述二值码编码模板中的各个编码位之间具有预设的顺序关系。也就是说,在为各个规则中条件的各个子条件编码后,分别将各个编码添加到所述二值码编码模板中的对应编码位上,得到各个规则对应的二值码。
具体的,在二值码编码的过程中,将各条规则中的各个子条件对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到各个规则对应的二值码。如表2,为根据表1中设置的二值码编码模板对各个规则进行编码。表1中的四个编码模式的顺序关系为“age>10”、“age<40”、“sex=‘male’”、“salary>6000”。当某一规则中的条件仅为“age>10”,说明所述规则的二值码仅在第一个编码位为1,其他编码位为0。当某一规则中的条件为age>10 and age<40,说明所述规则的二值码的第一个编码位和第二个编码位均为1,其他编码位为0。也就是说,规则的条件中不存在哪个编码模式,该编码模式对应的编码位均为0。
表2
另外,当接收到任一事实集时,将所述第一编码规则中的编码模式与所述事实集中的各个事实元素进行比较。例如事实集为“age=30、sex=‘female’、salary=3000”,其中,“age=30”、“sex=‘female’”和“salary=3000”均为所述事实集中的事实元素。当某个事实元素满足预先设置的某个编码模式时,将所述编码模式对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到所述事实集的二值码。也就是说,所述事实集中的事实元素不能满足的编码模式对应的编码位编码为0。
一种优选地实施方式中,为了减少事实集的匹配次数,从而提高规则匹配的效率,本实施例可以预先确定事实集对应的可匹配规则范围。
具体的,可以根据所述事实集的二值码,确定所述事实集对应的可匹配规则范围。实际应用中,可以根据所述事实集的二值码确定所述事实集对应的十进制数的范围。在确定所述十进制数的范围之前,首先确定该范围的起始值和结束值。
以事实集的二值码F1为00010110为例,首先从F1的最低位向最高位(从右向左)依次扫描该事实集的二值码,直到扫描到1或最高位,则将该位所代表的十进制数作为起始值。如F1:00010110的起始值可以通过从右向左扫描F1直到首次出现1的位确定,并将其转换成十进制数为2。所以,F1:00010110的起始值为2。另外,将所述事实集的二值码转换成十进制数,所述十进制数即为所述事实集对应的十进制数的范围的结束值,F1:00010110的起始值为22。通过上述方法确定F1:00010110对应的十进制数的范围为[2,22]。
另外,本实施例还需要将各个规则对应的二值码均转换为十进制数,并找出属于所述事实集的二值码对应的可匹配规则范围的规则。如表3,可以确定十进制数处于[2,22]的规则均为F1可匹配的规则。
F1可匹配的规则 | 十进制数 |
00010110 | 22 |
00000010 | 2 |
00000100 | 4 |
00010000 | 16 |
00010010 | 18 |
00010100 | 20 |
00000110 | 6 |
表3
实际应用中,可以仅将接收到的事实集与预先确定的可匹配的规则进行匹配,这样能够减少事实集匹配的次数,从而提高规则匹配效率。
具体的,本实施例可以判断所述事实集的二值码是否与任一可匹配规则对应的二值码符合预设的匹配条件,当所述事实集的二值码与任一可匹配规则对应的二值码符合预设的匹配条件时,确定所述事实集与所述可匹配规则匹配。
另外,在规则非常多的实施场景下,可以为所述事实集确定多个可匹配规则的范围,使规则匹配更加精确,处理方式与上述确定一个范围的基本相同,具体如下:
各个可匹配规则范围的起始值的确定方法为:从当前位(初始为最低位)向最高位依次扫描所述事实值的二值码,直到扫描到1或最高位,则将该位所代表的十进制数作为该可匹配规则范围的起始值。
各个可匹配规则范围的结束值的确定方法为:从当前位继续向最高位扫描,直到扫描到0或最高位,则将该位及该位到最低位部分的十进制数作为该可匹配规则范围的结束值。
直到完成扫描所述是事实集的二值码最高位,则结束各个可匹配规则的范围的确定。
如图2,仍以F1:00010110为例,图2为可匹配规则的范围为多个可匹配规则范围组成时的可匹配规则范围确定示意图。可见,这种方式已将上述方法确定的F1:00010110对应的十进制数的范围为[2,22]缩小为[2,6]和[16,22]两个小区间,同时避免了事实集匹配十进制数处于[6,16]区间的规则,增加了规则匹配的效率。
另一种优选的实施方式中,通过直接确定所述事实集可匹配的规则,减少所述事实集匹配的次数,从而提高规则匹配效率。
具体的,本实施例可以将所述事实集的二值码中编码为0的编码位不变,编码为1的编码位进行排列,得到所述事实集对应的可匹配二值码。其次,确定属于所述可匹配二值码的二值码对应的规则。
实际应用中,本实施例可以获取所述事实集的二值码可以匹配的规则,具体的,将该二值码中编码为1的部分抽取出来,并对其进行排列组合,最终得到可匹配的二值码。
根据组合公式可知,当二值码中的1比较稀疏时(即n很小),则2n远小于2N(N为编码模式的个数),因此本实施例可以有效的减少匹配次数。
以下给出一种通过对事实集的二值码中的编码为1的部分进行排列组合,确定所述事实集可匹配的二值码的方法。首先,找出事实集的二值码中的基向量(即规则对应的二值码中仅一位为1,其余为0的情况的集合)。获取方法为:从所述事实集的二值码的最低位向最高位(由右向左)依次扫描事实集的二值码,若扫描到1,则获取并保存该位所代表的十进制数,如F1:00010110的基向量记为B(2,4,16)。
假如基向量包含n个数,则求从n个数里取m个数的所有组合(m>1,且m<=n)。首先创建数组A[n],其下标n表示第n个数,当数组元素为1时表示其下标所代表的数被选中,0则代表没选中。其次,初始化A[n],将数组前m个元素置1,表示第一个组合为前m个数。从左到右扫描数组A[n]的10组合,找到第一个10组合后将其变为01组合,同时将其左边的所有1全部移动到数组的最左端,并计算规则索引(index)及保存,计算公式为:
index=A[1]×B[1]+A[2]×B[2]+…A[n]×B[n]
当第一个1移动到数组的n-m的位置,即m个1全部移动到最右端时结束。
仍以F1:00010110为例,首先确定F1的基向量B(2,4,16),n=3,计算过程如表4所示。分别将F1中为1的编码取出,分情况分别进行如下分析,最终通过排列组合确定所述事实集的二值码可匹配的规则对应的二值码。
表4
另外,为了进一步提高规则匹配的效率,本实施例在利用上述方法实现规则匹配一段时间后,统计第一编码规则中的每个编码模式的后验概率(即编码为1的分布)。并按统计的后验概率重新设置各个编码模式之间的顺序关系,即让概率大的编码模式占用二值码的低位,概率小的占用高位。
在互联网支付交易场景中,由于规则匹配被应用于互联网支付交易环节的防止恶意盗取中,而支付交易中的恶意盗取毕竟是显少发生的,所以,大多数用户并不会涉及匹配规则步骤。互联网支付交易场景中,实际选取的编码模式和恶意盗取的特征有关,如与IP是否跳变,被盗次数等有关。而恶意盗取事件始终是少数,所以接收到的事实集对应的二值码总是全0。也就是说,当接收到的事实集对应的二值码为全0时,即未发生恶意盗取事件,则无需执行规则匹配。
本发明首先根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。本发明预先为各条规则编码,当接收到事实集后,直接将编码后的事实集与各条规则的编码进行匹配。与现有技术相比,本发明将规则的解析和匹配分开处理,提高了规则匹配的效率。
另外,对于具有规则数量少、实时数据海量且变化快特点的互联网支付交易场景,本发明实施例能够预先将数量较少的规则逐一完成编码,有效提高后续规则匹配的效率,满足互联网线上交易的实时性要求。
参考图3,为本发明实施例提供的一种规则匹配装置结构示意图,所述装置包括:
第一编码模块301,用于根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;
第二编码模块302,用于当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;
第一确定模块303,用于当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。
其中,所述第一编码模块,具体用于根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的二值码;
相应的,所述第二编码模块,具体用于当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的二值码。
在预先设置第一编码规则时,所述装置还可以包括:
第一设置模块,用于将各个规则中条件的各个子条件分别设置为所述第一编码规则中的编码模式;
第二设置模块,用于预先在所述第一编码规则中设置二值码编码模板,所述二值码编码模板中包括预设个数的编码位,各个编码位具有与其唯一对应的编码模式,且所述二值码编码模板中的各个编码位之间具有预设的顺序关系。
其中,所述第二编码模块可以包括:
比较子模块,用于当接收到任一事实集时,将所述第一编码规则中的编码模式与所述事实集中的各个事实元素进行比较;
编码子模块,用于当任一事实元素满足所述编码模式时,将所述编码模式对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到所述事实集的二值码;
相应的,所述第一编码模块,具体用于将各条规则中的各个子条件对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到各个规则对应的二值码。
为了减少事实集的匹配次数,提高规则匹配效率。,所述装置还可以包括:
第二确定模块,用于根据所述事实集的二值码,确定所述事实集对应的可匹配规则范围;
第三确定模块,用于确定属于所述可匹配规则范围的规则对应的可匹配二值码;
相应的,所述第一确定模块,包括:
判断子模块,用于判断所述事实集的二值码是否与任一可匹配二值码符合预设的匹配条件;
确定子模块,用于当所述事实集的二值码与任一可匹配二值码符合预设的匹配条件时,确定所述事实集与所述可匹配二值码对应的规则匹配。
另外,所述装置还可以包括:
排列模块,用于将所述事实集的二值码中编码为0的编码位不变,编码为1的编码位进行排列,得到所述事实集对应的可匹配二值码;
第四确定模块,用于确定属于所述可匹配二值码的二值码对应的规则;
相应的,所述第一确定模块,具体用于确定所述属于所述可匹配二值码的二值码对应的规则与所述事实集匹配。
本发明实施例根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。本发明实施例预先为各条规则编码,当接收到事实集后,直接将编码后的事实集与各条规则的编码进行匹配。与现有技术相比,本发明实施例将规则的解析和匹配分开处理,提高了规则匹配的效率。
相应的,本发明实施例还提供一种服务器,参见图4所示,可以包括:
处理器401、存储器402、输入装置403和输出装置404。本发明实施例中的视频接入服务器中的处理器401的数量可以一个或多个,图4中以一个处理器为例。在本发明的一些实施例中,处理器401、存储器402、输入装置403和输出装置404可通过总线或其它方式连接,其中,图4中以通过总线连接为例。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行视频接入服务器的各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。输入装置403可用于接收视频源的视频数据等。
具体在本实施例中,处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能:
根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;
当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;
当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。
优选地,所述根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码,包括:
根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的二值码;
相应的,所述当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码,包括:
当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的二值码。
优选地,所述方法还包括:
将各个规则中条件的各个子条件分别设置为所述第一编码规则中的编码模式;
预先在所述第一编码规则中设置二值码编码模板,所述二值码编码模板中包括预设个数的编码位,各个编码位具有与其唯一对应的编码模式,且所述二值码编码模板中的各个编码位之间具有预设的顺序关系。
优选地,所述当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的二值码,包括:
当接收到任一事实集时,将所述第一编码规则中的编码模式与所述事实集中的各个事实元素进行比较,当任一事实元素满足所述编码模式时,将所述编码模式对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到所述事实集的二值码;
相应的,所述根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的二值码,包括:
将各条规则中的各个子条件对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到各个规则对应的二值码。
优选地,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配之前,还包括:
根据所述事实集的二值码,确定所述事实集对应的可匹配规则范围;
确定属于所述可匹配规则范围的规则对应的可匹配二值码;
相应的,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配,具体为:
判断所述事实集的二值码是否与任一可匹配二值码符合预设的匹配条件,当所述事实集的二值码与任一可匹配二值码符合预设的匹配条件时,确定所述事实集与所述可匹配二值码对应的规则匹配。
优选地,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配之前,还包括:
将所述事实集的二值码中编码为0的编码位不变,编码为1的编码位进行排列,得到所述事实集对应的可匹配二值码;
确定属于所述可匹配二值码的二值码对应的规则;
相应的,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配,具体为:
确定所述属于所述可匹配二值码的二值码对应的规则与所述事实集匹配。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明实施例所提供的规则匹配方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种规则匹配方法,其特征在于,所述方法包括:
根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;
当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;
当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。
2.根据权利要求1所述的方法,其特征在于,所述根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码,包括:
根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的二值码;
相应的,所述当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码,包括:
当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的二值码。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将各个规则中条件的各个子条件分别设置为所述第一编码规则中的编码模式;
预先在所述第一编码规则中设置二值码编码模板,所述二值码编码模板中包括预设个数的编码位,各个编码位具有与其唯一对应的编码模式,且所述二值码编码模板中的各个编码位之间具有预设的顺序关系。
4.根据权利要求3所述的方法,其特征在于,所述当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的二值码,包括:
当接收到任一事实集时,将所述第一编码规则中的编码模式与所述事实集中的各个事实元素进行比较,当任一事实元素满足所述编码模式时,将所述编码模式对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到所述事实集的二值码;
相应的,所述根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的二值码,包括:
将各条规则中的各个子条件对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到各个规则对应的二值码。
5.根据权利要求2-4中任一所述的方法,其特征在于,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配之前,还包括:
根据所述事实集的二值码,确定所述事实集对应的可匹配规则范围;
确定属于所述可匹配规则范围的规则对应的可匹配二值码;
相应的,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配,具体为:
判断所述事实集的二值码是否与任一可匹配二值码符合预设的匹配条件,当所述事实集的二值码与任一可匹配二值码符合预设的匹配条件时,确定所述事实集与所述可匹配二值码对应的规则匹配。
6.根据权利要求4所述的方法,其特征在于,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配之前,还包括:
将所述事实集的二值码中编码为0的编码位不变,编码为1的编码位进行排列,得到所述事实集对应的可匹配二值码;
确定属于所述可匹配二值码的二值码对应的规则;
相应的,所述当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配,具体为:
确定所述属于所述可匹配二值码的二值码对应的规则与所述事实集匹配。
7.一种规则匹配装置,其特征在于,所述装置包括:
第一编码模块,用于根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的编码;
第二编码模块,用于当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的编码;
第一确定模块,用于当所述事实集的编码与任一规则对应的编码符合预设的匹配条件时,确定所述事实集与所述规则匹配。
8.根据权利要求7所述的装置,其特征在于,所述第一编码模块,具体用于根据预设的第一编码规则,为各条规则中的条件编码,得到各个规则对应的二值码;
相应的,所述第二编码模块,具体用于当接收到任一事实集时,根据所述第一编码规则,为所述事实集编码,得到所述事实集的二值码。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第一设置模块,用于将各个规则中条件的各个子条件分别设置为所述第一编码规则中的编码模式;
第二设置模块,用于预先在所述第一编码规则中设置二值码编码模板,所述二值码编码模板中包括预设个数的编码位,各个编码位具有与其唯一对应的编码模式,且所述二值码编码模板中的各个编码位之间具有预设的顺序关系。
10.根据权利要求9所述的装置,其特征在于,所述第二编码模块,包括:
比较子模块,用于当接收到任一事实集时,将所述第一编码规则中的编码模式与所述事实集中的各个事实元素进行比较;
编码子模块,用于当任一事实元素满足所述编码模式时,将所述编码模式对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到所述事实集的二值码;
相应的,所述第一编码模块,具体用于将各条规则中的各个子条件对应的所述二值码编码模板中的编码位编码为1,并将所述二值码编码模板中的其他编码位编码为0,以便得到各个规则对应的二值码。
11.根据权利要求8-10中任一所述的装置,其特征在于,所述装置,还包括:
第二确定模块,用于根据所述事实集的二值码,确定所述事实集对应的可匹配规则范围;
第三确定模块,用于确定属于所述可匹配规则范围的规则对应的可匹配二值码;
相应的,所述第一确定模块,包括:
判断子模块,用于判断所述事实集的二值码是否与任一可匹配二值码符合预设的匹配条件;
确定子模块,用于当所述事实集的二值码与任一可匹配二值码符合预设的匹配条件时,确定所述事实集与所述可匹配二值码对应的规则匹配。
12.根据权利要求10所述的装置,其特征在于,所述装置,还包括:
排列模块,用于将所述事实集的二值码中编码为0的编码位不变,编码为1的编码位进行排列,得到所述事实集对应的可匹配二值码;
第四确定模块,用于确定属于所述可匹配二值码的二值码对应的规则;
相应的,所述第一确定模块,具体用于确定所述属于所述可匹配二值码的二值码对应的规则与所述事实集匹配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510040911.1A CN105988777B (zh) | 2015-01-27 | 2015-01-27 | 一种规则匹配方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510040911.1A CN105988777B (zh) | 2015-01-27 | 2015-01-27 | 一种规则匹配方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105988777A true CN105988777A (zh) | 2016-10-05 |
CN105988777B CN105988777B (zh) | 2019-03-15 |
Family
ID=57034381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510040911.1A Active CN105988777B (zh) | 2015-01-27 | 2015-01-27 | 一种规则匹配方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105988777B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377419A (zh) * | 2021-05-31 | 2021-09-10 | 同盾科技有限公司 | 一种业务处理方法、装置、可读存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1547805A (zh) * | 2000-10-31 | 2004-11-17 | ض� | 执行霍夫曼解码的方法 |
CN101282121A (zh) * | 2007-04-05 | 2008-10-08 | 安凯(广州)软件技术有限公司 | 一种基于条件概率的哈夫曼解码的方法 |
US20130222159A1 (en) * | 2012-02-27 | 2013-08-29 | Igor Valeryevich Nesiolovskiy | Entropy method of binary-ternary lossless data coding |
-
2015
- 2015-01-27 CN CN201510040911.1A patent/CN105988777B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1547805A (zh) * | 2000-10-31 | 2004-11-17 | ض� | 执行霍夫曼解码的方法 |
CN101282121A (zh) * | 2007-04-05 | 2008-10-08 | 安凯(广州)软件技术有限公司 | 一种基于条件概率的哈夫曼解码的方法 |
US20130222159A1 (en) * | 2012-02-27 | 2013-08-29 | Igor Valeryevich Nesiolovskiy | Entropy method of binary-ternary lossless data coding |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377419A (zh) * | 2021-05-31 | 2021-09-10 | 同盾科技有限公司 | 一种业务处理方法、装置、可读存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN105988777B (zh) | 2019-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102368237B (zh) | 图像检索方法、装置及系统 | |
CN102722880B (zh) | 图像主颜色的识别方法、装置及图像匹配方法和服务器 | |
CN104408055B (zh) | 一种激光雷达点云数据的存储方法及装置 | |
US10180960B2 (en) | Query processing | |
CN107247822A (zh) | 一种使bim模型轻量化的方法 | |
CN109951846A (zh) | 无线网络识别方法、装置、存储介质及计算机设备 | |
CN105389716A (zh) | 消费者扫描产品二维码以进行多次抽奖的方法与系统 | |
CN103678513B (zh) | 一种交互式的检索式生成方法及系统 | |
CN104392001A (zh) | 数据库查询方法和装置 | |
CN101963988A (zh) | 一种规范自由裁量的智能引擎及其实现方法 | |
CN103065311A (zh) | 基于基准影像库的卫星影像自动配准方法 | |
CN101540061B (zh) | 基于模拟退火的无序图像拓扑有序化匹配方法 | |
CN105988777A (zh) | 一种规则匹配方法及装置 | |
CN103886352A (zh) | 一种二维码处理的方法与设备 | |
CN105701256A (zh) | 一种通讯点表文件比较方法 | |
CN105550220A (zh) | 一种异构系统的取数的方法及装置 | |
CN106815179A (zh) | 一种文本相似度确定方法及装置 | |
Favara et al. | Confidence level estimation and analysis optimization | |
CN108763260A (zh) | 一种试题搜索方法、系统及终端设备 | |
CN112733234A (zh) | 一种基于电缆信息传递的三维桥架自动计算及生成的装置 | |
CN109918391B (zh) | 一种流式事务处理方法及系统 | |
CN105654106A (zh) | 一种决策树生成方法及系统 | |
Li et al. | Direct incremental transmission of boundary representation | |
CN104281583B (zh) | 信息检索方法及装置 | |
CN107632999A (zh) | 一种对多个相关谓词进行合并的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |