CN112398809A - 协议规则转换方法、装置、计算机设备和存储介质 - Google Patents
协议规则转换方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112398809A CN112398809A CN202011052979.9A CN202011052979A CN112398809A CN 112398809 A CN112398809 A CN 112398809A CN 202011052979 A CN202011052979 A CN 202011052979A CN 112398809 A CN112398809 A CN 112398809A
- Authority
- CN
- China
- Prior art keywords
- rule file
- rule
- regular expression
- statement
- regular
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/03—Protocol definition or specification
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及一种协议规则转换方法、装置、计算机设备和存储介质。所述方法通过采用正则表达式语法格式对外部规则文件进行转换,生成包括正则表达式语句和正则表达式语句对应的标识的正则规则文件,再将正则规则文件中的各正则表达式语句与外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识,相继调用与各目标标识对应的输出函数,对外部规则文件进行规则转换,生成内部规则文件。上述方法实现了将外部规则文件转换成内部规则文件,极大的节省了根据外部规则文件编写内部规则文件的人力资源,以及降低了制造协议转换装置的成本。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种协议规则转换方法、装置、计算机设备和存储介质。
背景技术
在互联网应用***中的各业务设备可以采用应用协议规则描述互联网业务数据,以实现各业务设备之间的业务往来。但在实际应用中,不同业务设备所属单位通常会按照自己的标准来定义一套应用协议规则,然后使用自定义的应用协议规则描述当下业务场景的数据。
在不同业务设备采用不同的标准定义应用协议规则的应用场景下,往往需要将不同标准的应用协议规则进行相互转化,以整合不同业务设备的业务数据,实现不同业务设备之间的业务数据交互。目前,不同的业务设备均配置有自己特定的应用协议转换装置,用于将对接的业务设备应用的协议规则转换成当前业务设备应用的协议规则,以能够正常对接业务设备的业务数据进行业务处理。
然而,上述应用协议转换装置仅能支持转换一种类型的应用协议规则,若当前业务设备需要对接新的业务设备时,需要重新更换应用协议转换装置,导致转换成本提高。
发明内容
基于此,有必要针对上述技术问题,提供一种能够有效降低转换成本的协议规则转换方法、装置、计算机设备和存储介质。
第一方面,一种协议规则转换方法,所述方法包括:
采用正则表达式语法格式对外部规则文件进行转换,生成正则规则文件;所述正则规则文件包括正则表达式语句和所述正则表达式语句对应的标识;
将所述正则规则文件中的各所述正则表达式语句与所述外部规则文件中的每个语句进行信息匹配,得到匹配成功的正则表达式语句对应的目标标识;
调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
上述协议规则转换方法中,通过采用正则表达式语法格式对外部规则文件进行转换,生成包括正则表达式语句和正则表达式语句对应的标识的正则规则文件,再将正则规则文件中的各正则表达式语句与外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识,相继调用与各目标标识对应的输出函数,对外部规则文件进行规则转换,生成内部规则文件。上述方法实现了将外部规则文件转换成内部规则文件,在转换过程中,由于正则表达式语法是通用的语法格式,因此采用正则表达式语法格式对外部规则文件进行转换生成的正则规则文件是容易被识别的,那么无论外部规则文件是以任何标准定义的规则文件,本申请提供的协议规则转换方法都可以进行规则转换成内部规则文件,克服了传统的一种协议规则转换方法仅能对一种标准定义的外部规则文件进行转换导致的转换成本高的问题,因此本申请提供的协议规则转换方法极大的节省了根据外部规则文件编写内部规则文件的人力资源,以及降低了制造协议转换装置的成本。
在其中一个实施例中,所述调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件,包括:
根据预设的标识与输出函数之间的映射关系,确定与各所述目标标识对应的输出函数;
调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
上述方法中,不同标识对应不同的输出函数,相当于不同的正则表达式语句对应不同的输出函数,因此,计算机设备只要将外部规则文件转换成正则规则文件,后期即可快速的根据标识与输出函数之间的映射关系,查找到对应的输出函数对外部规则文件中的信息语句进行转换,转换速度很快,而且,本申请提供的协议规则转换方法适用于任何类型的外部规则文件。
在其中一个实施例中,所述调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件,包括:
将各所述目标标识、各所述目标标识对应的正则表达式语句、以及各所述目标标识对应的所述外部文件中的信息语句,输入至各所述目标标识对应的输出函数中,得到所述内部规则文件中的信息语句。
在其中一个实施例中,获取所述映射关系,包括:
根据所述内部规则文件中规则语句的语法要求,定义所述正则规则文件中各标识对应的输出函数;
建立所述输出函数与所述标识之间的映射关系。
上述方法实现了计算机设备通过建立输出函数与标识之间的映射关系,并基于输出函数与标识之间的映射关系,快速找到外部规则文件中每个信息语句对应的输出函数,从而提高了外部规则文件的转换效率。
在其中一个实施例中,所述将所述正则规则文件中的各所述正则表达式语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识,包括:
将所述正则规则文件中的各所述正则表达式语句进行代码转换,得到各正则表达式代码语句;
将各所述正则表达式代码语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识。
在其中一个实施例中,所述将所述正则规则文件中的各所述正则表达式语句进行代码转换,得到各正则表达式代码语句,包括:
将所述正则规则文件中的各所述正则表达式语句进行C代码转换,得到各正则表达式C代码语句。
上述方法中,由于C代码为通用的代码,兼容性比较强,而且大部分的业务设备的主程序都是采用C代码实现的,因此,计算机设备将正则规则文件先转换成C代码文件,再与外部规则文件进行匹配,得到匹配成功的C代码语句,然后基于匹配成功的C代码语句的标识调用C代码编辑的输出函数,即可快速的实现协议规则转换,可以很好的兼容内部规则文件所在***的代码类型,可以提高本申请协议规则转换方法的普及应用性。
在其中一个实施例中,所述方法还包括:
根据外部规则文件中每个规则语句的语法格式与正则表达式语法格式之间的映射关系,确定与外部规则文件中每个规则语句的语法格式对应的正则表达式语法格式。
第二方面,一种协议规则转换装置,所述装置包括:
生成模块,用于采用正则表达式语法格式对外部规则文件进行转换,生成正则规则文件;所述正则规则文件包括正则表达式语句和所述正则表达式语句对应的标识;
匹配模块,用于将所述正则规则文件中的各所述正则表达式语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识;
生成模块,用于调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
第三方面,一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述协议规则转换方法。
第四方面,一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述协议规则转换方法。
附图说明
图1为一个实施例中计算机设备的内部结构图;
图2为一个实施例中协议规则转换方法的流程示意图;
图3为图2实施例中S103的一种实现方式的流程示意图;
图4为一个实施例中协议规则转换方法的流程示意图;
图5为图2实施例中S102的一种实现方式的流程示意图;
图6为一个实施例中协议规则转换方法的流程示意图;
图7为一个实施例中协议规则转换装置的结构框图;
图8为一个实施例中协议规则转换装置的结构框图;
图9为一个实施例中协议规则转换装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的协议规则转换方法,可以应用于如图1所示的计算机设备中,该计算机设备可以是服务器,该计算机设备也可以是终端,其内部结构图可以如图1所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种协议规则转换方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,如图2所示,提供了一种协议规则转换方法,以该方法应用于图1中的计算机设备为例进行说明,包括以下步骤:
S101,采用正则表达式语法格式对外部规则文件进行转换,生成正则规则文件;正则规则文件包括正则表达式语句和正则表达式语句对应的标识。
其中,外部规则文件为采用某种标准书写的一种应用协议特征规则文件。外部规则文件为待转换协议规则的规则文件,外部规则文件中包含描述语法的规则语句和描述业务内容的信息语句。
具体地,当计算机设备对外部规则文件进行转换时,可以读取外部规则文件中的每个规则语句,然后通过分析每个规则语句中的语法规则,并使用正则表达式语法重新描述,进而得到每个规则语句对应的正则表达式语法描述语句,即正则表达式语句,相应的,计算机设备可以根据每个正则表达式语句的属性或执行类型确定每个正则表达式语句的标识,然后计算机设备将每个正则表达式语句对应的标识和正则表达式语句记录在正则规则文件中。
S102,将正则规则文件中的各正则表达式语句与外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识。
具体地,当计算机设备基于前述步骤得到正则规则文件后,即可将正则规则文件中的各正则表达式语句与外部规则文件中的每个信息语句进行匹配,具体在匹配时,可以先使用外部规则文件中的一个信息语句与正则规则文件中的每个正则表达式语句依次进行匹配,若信息语句的语法表达形式与预匹配的正则表达式语句的语法表达形式相同,则认为该预匹配的正则表达式语句与该信息语句匹配成功,若信息语句的语法表达形式与预匹配的正则表达式语句的语法表达形式不相同,则认为该预匹配的正则表达式语句与该信息语句匹配失败。采用上述匹配方法,将外部规则文件中的所有信息语句遍历匹配一遍。在此过程中,若匹配成功,则在正则规则文件中获取匹配成功的正则表达式语句对应的标识作为目标标识。可选的,当计算机设备基于前述步骤得到正则规则文件后,也可以对正则规则文件进行处理或文件类型转换,然后将处理后或转换后的正则规则文件中的各正则表达式语句与外部规则文件中的各信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识。例如,若外部规则文件中信息语句A为“host:www.***.com\r\n”,正则规则文件中的预匹配的正则表达式语句B为“RETR_HOST:host:[*-*]\r\n”,其中,host:[*-*]\r\n为正则规则文件中的正则表达式,RETR_HOST为该正则表达式语句对应的标识。将上述信息语句A与预匹配的正则表达式语句B进行匹配,由于正则表达式“host:[*-*]\r\n”的语法表达形式与语句“host:www.***.com\r\n”的语法表达形式相同,因此,确定该信息语句A与正则表达式语句B匹配成功。
S103,调用与各目标标识对应的输出函数,对外部规则文件进行规则转换,生成内部规则文件。
其中,内部规则文件为采用某种标准书写的一种应用协议特征规则文件,其采用的标准与前述外部规则文件采用的标准不同。输出函数用于将输入的一种规则类型的语句转换成另一种规则类型的语句。本实施例中的输出函数用于将输入的外部规则文件中的信息语句转换成内部规则文件中的信息语句。不同的标识对应不同的输出函数,标识与输出函数之间的对应关系预先由计算机设备确定并存储。
具体地,当计算机设备得到匹配成功的正则表达式语句对应的目标标识后,即可再根据目标标识确定对应的输出函数,然后依次调用与各目标标识对应的输出函数对匹配的外部规则文件中的每个信息语句进行规则转换,并将转换后的各信息语句记录在文件中,生成内部规则文件。需要说明的是,内部规则文件中包含描述语法的规则语句和描述业务内容的信息语句。其中,内部规则文中的规则语句是预先由计算机设备根据内部规则编辑生成的。
上述协议规则转换方法中,通过采用正则表达式语法格式对外部规则文件进行转换,生成包括正则表达式语句和正则表达式语句对应的标识的正则规则文件,再将正则规则文件中的各正则表达式语句与外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识,相继调用与各目标标识对应的输出函数,对外部规则文件进行规则转换,生成内部规则文件。上述方法实现了将外部规则文件转换成内部规则文件,在转换过程中,由于正则表达式语法是通用的语法格式,因此采用正则表达式语法格式对外部规则文件进行转换生成的正则规则文件是容易被识别的,那么无论外部规则文件是以任何标准定义的规则文件,本申请提供的协议规则转换方法都可以进行规则转换成内部规则文件,克服了传统的一种协议规则转换方法仅能对一种标准定义的外部规则文件进行转换导致的转换成本高的问题,因此本申请提供的协议规则转换方法极大的节省了根据外部规则文件编写内部规则文件的人力资源,以及降低了制造协议转换装置的成本。
在一个实施例中,提供了上述S103的具体实现方式,如图3所示,上述S103“调用与各目标标识对应的输出函数,对外部规则文件进行规则转换,生成内部规则文件”,包括:
S201,根据预设的标识与输出函数之间的映射关系,确定与各目标标识对应的输出函数。
其中,标识与输出函数之间的映射关系可以由计算机设备预先确定,不同的标识对应不同的映射关系。具体地,计算机设备可以预先定义不同标识对应的不同输出函数,并将标识与输出函数之间的映射关系记录下来并存储在计算机设备内存或数据库中,以便之后调用输出函数时使用。当计算机设备得到匹配成功的正则表达式语句对应的目标标识时,即可在内存或数据库中查找标识与输出函数之间的映射关系,再进一步的根据该映射关系确定目标标识对应的输出函数。
S202,调用与各目标标识对应的输出函数,对外部规则文件进行规则转换,生成内部规则文件。
具体地,当计算机设备确定了与各目标标识对应的输出函数时,即可依次或同时从代码库中调用各目标标识对应的输出函数,对外部规则文件中的各信息语句进行规则转换,生成内部规则文件中的各信息语句。
可选地,在计算机设备执行上述S202时,可以具体的将各目标标识、各目标标识对应的正则表达式语句、以及各目标标识对应的外部文件中的信息语句,输入至各目标标识对应的输出函数中,得到内部规则文件中的信息语句。
具体地,以一个目标标识为例进行说明,当计算机设备得到一个匹配成功的正则表达式语句对应的目标标识时,还可以在正则规则文件中获取该匹配成功的正则表达式语句,以及在外部规则文件中获取该目标标识对应的信息语句,然后将上述得到的目标标识、正则表达式语句、以及外部规则文件中的信息语句作为函数的输入参数,输入至与该目标标识对应的输出函数中,则该输出函数即可输出经过规则转化后的信息语句,然后将该信息语句记录在文件中形成内部规则文件。
例如,若匹配成功后的外部规则文件中信息语句A为“host:www.***.com\r\n”,正则规则文件中的正则表达式语句B为“RETR_HOST:host:[*-*]\r\n”,其中,host:[*-*]\r\n为正则表达式语句,RETR_HOST为该正则表达式语句对应的目标标识。之后,根据该目标标识确定对应的输出函数,该输出函数包括3个输入参数,第一个输入参数为目标标识“RETR_HOST”,第二个输入参数为正则表达式语句“host:[*-*]\r\n”,第三个输入参数为信息语句A“host:www.***.com\r\n”。该输出函数首先根据正则表达式语句和目标标识将信息语句A中的业务信息“www.***.com”提取出来,然后根据正则表达式语句找到对应的内部规则文件中的规则语句,再使用按照该规则语句指示的语法格式描述提取出的业务信息“www.***.com”,最后为重新描述后的语句添加语句类型(语句类型根据目标标识“RETR_HOST”确定,本例子中语句类型为HOST),转换形成内部规则文件中的信息语句C,即使用输出函数基于上述3个输入参数即可实现将信息语句A转换成内部规则文件中的信息语句C。
需要说明的是,正则表达式语句与内部规则文件中的规则语句存在映射关系,即计算机设备在生成正则规则文件后,可以进一步的分析正则规则文件中的每个正则表达式语句的语法表达形式和内部规则文件中每个规则语句的语法表达形式,然后将语法表达形式相同的正则规则文件中正则表达式语句与内部规则文件中规则语句对应起来,生成正则规则文件中正则表达式语句与内部规则文件中的规则语句之间的映射关系,以便之后使用。例如,上述例子中,在使用输出函数转换外部规则文件中的信息语句A时,其中有一个步骤需要根据信息语句A对应的正则表达式语句,找到对应的内部规则文件中的规则语句,执行该步骤时,计算机设备即可根据预先构建的正则表达式语句与内部规则文件中规则语句的映射关系实现。
上述方法中,不同标识对应不同的输出函数,相当于不同的正则表达式语句对应不同的输出函数,因此,计算机设备只要将外部规则文件转换成正则规则文件,后期即可快速的根据标识与输出函数之间的映射关系,查找到对应的输出函数对外部规则文件中的信息语句进行规则转换,转换速度很快,而且,本申请提供的协议规则转换方法适用于任何类型的外部规则文件。
进一步地,计算机设备在执行上述S201时,需要获取标识与输出函数之间的映射关系,该映射关系是预先由计算机设备确定的,因此,本申请提供了确定该映射关系的具体实现方式,如图4所示,该方式包括:
S301,根据内部规则文件中规则语句的语法要求,定义正则规则文件中各标识对应的输出函数。
具体地,计算机设备可以预先编译能够按照内部规则文件中规则语句的语法要求转换外部规则文件中信息语句的输出函数。由于外部规则文件中每个信息语句与内部规则文件中每个信息语句的语法是对应的,因此使用对应的输出函数即可实现外部规则文件中信息语句与内部规则文件中信息语句的转换。为了识别不同的信息语句,因此将与不同信息语句对应的标识,和输出函数对应起来,形成输出函数与标识之间的映射关系。
S302,建立输出函数与标识之间的映射关系。
当计算机设备确定了输出函数与标识之间的映射关系后,即可建立输出函数与标识之间的映射关系,并存储在计算机设备内存或数据库中随时查看使用。
上述方法实现了计算机设备通过建立输出函数与标识之间的映射关系,并基于输出函数与标识之间的映射关系,快速找到外部规则文件中每个信息语句对应的输出函数,从而提高了外部规则文件的转换效率。
在一个实施例中,本申请还提供了一种上述S102的具体实现方法,如图5所示,上述S102“将正则规则文件中的各正则表达式语句与外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识”包括:
S401,将正则规则文件中的各正则表达式语句进行代码转换,得到各正则表达式代码语句。
具体地,当计算机设备得到正则规则文件后,可以先采用现有的代码转换工具,例如,lex工具或yacc工具,将正则规则文件中的各正则表达式语句进行代码转换,得到各正则表达式代码语句。具体在代码转换时,计算机设备可以将正则规则文件转换成任何类型的代码文件,例如,C代码文件、C++代码文件、VB代码文件等等,至于转换成何种类型的代码文件可以由计算机设备预先根据实际应用需求确定。
可选地,计算机设备将正则规则文件中的各正则表达式语句进行C代码转换,得到各正则表达式C代码语句。因为C代码为通用的代码,兼容性比较强,而且大部分的业务设备的主程序都是采用C代码实现的,因此,计算机设备将正则规则文件先转换成C代码文件,再与外部规则文件进行匹配,得到匹配成功的C代码语句,然后基于匹配成功的C代码语句的标识调用C代码编辑的输出函数,即可快速的实现协议规则转换,可以很好的兼容内部规则文件所在***的代码类型,可以提高本申请协议规则转换方法的普及应用性。
S402,将各正则表达式代码语句与外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识。
该步骤涉及正则表达式代码语句与外部规则文件中的每个信息语句进行匹配的过程,该匹配过程与上述S102的匹配过程相同,详细内容请参见前述说明,此处不赘述。
在实际应用中,计算机设备在执行上述S101之前,计算机设备需要先确定转换外部规则文件时采用的正则表达式语法格式。具体的,计算机设备根据外部规则文件中每个规则语句的语法格式与正则表达式语法格式之间的映射关系,确定与外部规则文件中每个规则语句的语法格式对应的正则表达式语法格式。
其中,外部规则文件中每个规则语句的语法格式与正则表达式语法格式之间的映射关系可以由计算机设备预先确定并存储。当计算机设备需要转换外部规则文件时,可以读取外部规则文件中的每一个规则语句,然后查询外部规则文件中每个规则语句的语法格式与正则表达式语法格式之间的映射关系,确定出外部规则文件中的每一个规则语句对应的正则表达式语法格式,然后采用正则表达式语法格式替换外部规则文件中的每个规则语句,直到外部规则文件中所有规则语句被替换完成,即可实现将外部规则文件转换成正则规则文件。
综合上述所有实施例,本申请还提供了一种协议规则转换方法,如图6所示,该方法包括:
S501,根据外部规则文件中每个规则语句的语法格式与正则表达式语法格式之间的映射关系,确定与外部规则文件中每个规则语句的语法格式对应的正则表达式语法格式。
S502,采用正则表达式语法格式对外部规则文件进行转换,生成正则规则文件;正则规则文件包括正则表达式语句和正则表达式语句对应的标识。
S503,将正则规则文件中的各正则表达式语句进行C代码转换,得到各正则表达式C代码语句。
S504,将各正则表达式C代码语句与外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识。
S505,根据预设的标识与输出函数之间的映射关系,确定与各目标标识对应的输出函数。
S506,调用与各目标标识对应的输出函数,对外部规则文件进行规则转换,生成内部规则文件。
上述各步骤的具体说明可以参见前述说明,此处不赘述。
应该理解的是,虽然图2-6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-6中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种协议规则转换装置,包括:生成模块11、匹配模块12和生成模块13,其中:
生成模块11,用于采用正则表达式语法格式对外部规则文件进行转换,生成正则规则文件;所述正则规则文件包括正则表达式语句和所述正则表达式语句对应的标识。
匹配模块12,用于将所述正则规则文件中的各所述正则表达式语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识。
转换模块13,用于调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
在一个实施例中,上述转换模块13,如图8所示,包括:
确定单元131,用于根据预设的标识与输出函数之间的映射关系,确定与各所述目标标识对应的输出函数;
生成单元132,用于调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
在一个实施例中,上述生成单元132具体用于将各所述目标标识、各所述目标标识对应的正则表达式语句、以及各所述目标标识对应的所述外部文件中的信息语句,输入至各所述目标标识对应的输出函数中,得到所述内部规则文件中的信息语句。
在一个实施例中,上述匹配模块12,如图9所示,包括:
代码转换单元121,用于将所述正则规则文件中的各所述正则表达式语句进行代码转换,得到各正则表达式代码语句;
匹配单元122,用于将各所述正则表达式代码语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识。
在一个实施例中,上述代码转换单元121具体用于将所述正则规则文件中的各所述正则表达式语句进行C代码转换,得到各正则表达式C代码语句。
关于协议规则转换装置的具体限定可以参见上文中对于协议规则转换方法的限定,在此不再赘述。上述协议规则转换装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
采用正则表达式语法格式对外部规则文件进行转换,生成正则规则文件;所述正则规则文件包括正则表达式语句和所述正则表达式语句对应的标识;
将所述正则规则文件中的各所述正则表达式语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识;
调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
上述实施例提供的一种计算机设备,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
采用正则表达式语法格式对外部规则文件进行转换,生成正则规则文件;所述正则规则文件包括正则表达式语句和所述正则表达式语句对应的标识;
将所述正则规则文件中的各所述正则表达式语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识;
调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
上述实施例提供的一种计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种协议规则转换方法,其特征在于,所述方法包括:
采用正则表达式语法格式对外部规则文件进行转换,生成正则规则文件;所述正则规则文件包括正则表达式语句和所述正则表达式语句对应的标识;
将所述正则规则文件中的各所述正则表达式语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识;
调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
2.根据权利要求1所述的方法,其特征在于,所述调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件,包括:
根据预设的标识与输出函数之间的映射关系,确定与各所述目标标识对应的输出函数;
调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
3.根据权利要求2所述的方法,其特征在于,所述调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件,包括:
将各所述目标标识、各所述目标标识对应的正则表达式语句、以及各所述目标标识对应的所述外部文件中的信息语句,输入至各所述目标标识对应的输出函数中,得到所述内部规则文件中的信息语句。
4.根据权利要求2所述的方法,其特征在于,获取所述映射关系,包括:
根据所述内部规则文件中规则语句的语法要求,定义所述正则规则文件中各标识对应的输出函数;
建立所述输出函数与所述标识之间的映射关系。
5.根据权利要求1所述的方法,其特征在于,所述将所述正则规则文件中的各所述正则表达式语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识,包括:
将所述正则规则文件中的各所述正则表达式语句进行代码转换,得到各正则表达式代码语句;
将各所述正则表达式代码语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识。
6.根据权利要求5所述的方法,其特征在于,所述将所述正则规则文件中的各所述正则表达式语句进行代码转换,得到各正则表达式代码语句,包括:
将所述正则规则文件中的各所述正则表达式语句进行C代码转换,得到各正则表达式C代码语句。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据外部规则文件中每个规则语句的语法格式与正则表达式语法格式之间的映射关系,确定与外部规则文件中每个规则语句的语法格式对应的正则表达式语法格式。
8.一种协议规则转换装置,其特征在于,所述装置包括:
生成模块,用于采用正则表达式语法格式对外部规则文件进行转换,生成正则规则文件;所述正则规则文件包括正则表达式语句和所述正则表达式语句对应的标识;
匹配模块,用于将所述正则规则文件中的各所述正则表达式语句与所述外部规则文件中的每个信息语句进行匹配,得到匹配成功的正则表达式语句对应的目标标识;
生成模块,用于调用与各所述目标标识对应的输出函数,对所述外部规则文件进行规则转换,生成内部规则文件。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011052979.9A CN112398809B (zh) | 2020-09-29 | 2020-09-29 | 协议规则转换方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011052979.9A CN112398809B (zh) | 2020-09-29 | 2020-09-29 | 协议规则转换方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112398809A true CN112398809A (zh) | 2021-02-23 |
CN112398809B CN112398809B (zh) | 2023-03-24 |
Family
ID=74596626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011052979.9A Active CN112398809B (zh) | 2020-09-29 | 2020-09-29 | 协议规则转换方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112398809B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282932A (zh) * | 2021-07-22 | 2021-08-20 | 杭州安恒信息技术股份有限公司 | 一种poc生成方法、装置、电子设备和存储介质 |
CN114900345A (zh) * | 2022-04-28 | 2022-08-12 | 杭州安恒信息技术股份有限公司 | 规则转换方法、装置、电子装置和存储介质 |
US11546217B1 (en) * | 2021-09-14 | 2023-01-03 | Hewlett Packard Enterprise Development Lp | Detecting configuration anomaly in user configuration |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090282391A1 (en) * | 2008-05-09 | 2009-11-12 | Francisco Gutierrez | Converting format strings to regular expressions |
CN102143148A (zh) * | 2010-11-29 | 2011-08-03 | 华为技术有限公司 | 用于通用协议解析的参数获取和通用协议解析方法及装置 |
WO2015032155A1 (zh) * | 2013-09-09 | 2015-03-12 | 中国科学院计算机网络信息中心 | 一种物联网异构标识解析方法与*** |
CN107291522A (zh) * | 2016-04-11 | 2017-10-24 | 中国科学院信息工程研究所 | 一种面向自定义规则文件的编译优化方法及*** |
CN109800339A (zh) * | 2018-12-13 | 2019-05-24 | 平安普惠企业管理有限公司 | 正则表达式生成方法、装置、计算机设备及存储介质 |
CN111367975A (zh) * | 2018-12-25 | 2020-07-03 | ***通信集团浙江有限公司 | 一种多协议数据转换处理方法及装置 |
-
2020
- 2020-09-29 CN CN202011052979.9A patent/CN112398809B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090282391A1 (en) * | 2008-05-09 | 2009-11-12 | Francisco Gutierrez | Converting format strings to regular expressions |
CN102143148A (zh) * | 2010-11-29 | 2011-08-03 | 华为技术有限公司 | 用于通用协议解析的参数获取和通用协议解析方法及装置 |
WO2015032155A1 (zh) * | 2013-09-09 | 2015-03-12 | 中国科学院计算机网络信息中心 | 一种物联网异构标识解析方法与*** |
CN107291522A (zh) * | 2016-04-11 | 2017-10-24 | 中国科学院信息工程研究所 | 一种面向自定义规则文件的编译优化方法及*** |
CN109800339A (zh) * | 2018-12-13 | 2019-05-24 | 平安普惠企业管理有限公司 | 正则表达式生成方法、装置、计算机设备及存储介质 |
CN111367975A (zh) * | 2018-12-25 | 2020-07-03 | ***通信集团浙江有限公司 | 一种多协议数据转换处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
郑建立等: "基于程序生成技术的医疗仪器通信协议转换研究", 《中国医学物理学杂志》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282932A (zh) * | 2021-07-22 | 2021-08-20 | 杭州安恒信息技术股份有限公司 | 一种poc生成方法、装置、电子设备和存储介质 |
US11546217B1 (en) * | 2021-09-14 | 2023-01-03 | Hewlett Packard Enterprise Development Lp | Detecting configuration anomaly in user configuration |
CN114900345A (zh) * | 2022-04-28 | 2022-08-12 | 杭州安恒信息技术股份有限公司 | 规则转换方法、装置、电子装置和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112398809B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112398809B (zh) | 协议规则转换方法、装置、计算机设备和存储介质 | |
CN110008045B (zh) | 微服务的聚合方法、装置、设备及存储介质 | |
CN109814854B (zh) | 项目框架生成方法、装置、计算机设备和存储介质 | |
CN110688598B (zh) | 业务参数采集方法、装置、计算机设备和存储介质 | |
CN110781658B (zh) | 简历解析方法、装置、电子设备和存储介质 | |
CN110580189A (zh) | 生成前端页面的方法、装置、计算机设备以及存储介质 | |
CN111190609B (zh) | 业务的处理方法、装置、设备和存储介质 | |
CN111242317A (zh) | 管理应用的方法、装置、计算机设备和存储介质 | |
CN111818175A (zh) | 企业服务总线配置文件生成方法、装置、设备和存储介质 | |
CN112966824A (zh) | 推理库的部署方法、装置和电子设备 | |
CN110874216B (zh) | 一种完备代码生成方法、装置、设备和存储介质 | |
CN111046393B (zh) | 漏洞信息上传方法、装置、终端设备及存储介质 | |
CN109509467B (zh) | 代码生成方法及装置 | |
CN109684207B (zh) | 操作序列封装的方法、装置、电子设备及存储介质 | |
CN113050987B (zh) | 一种接口文档的生成方法、装置、存储介质及电子设备 | |
CN116069842A (zh) | 数据转储方法及装置 | |
CN113468446B (zh) | 一种支持识别第三方二维码数据的方法、***及设备 | |
CN111966506B (zh) | 基于不同应用程序的内容分享方法和计算机设备 | |
CN114969603A (zh) | 基于5g消息的图片获取、图片生成方法及*** | |
CN114219643A (zh) | 一种交易调用方法、装置、设备及存储介质 | |
CN112417020A (zh) | 业务扩展的实现方法、装置、计算机设备和存储介质 | |
CN111858864A (zh) | 实现填槽的方法、装置、电子设备及可读介质 | |
CN114912048B (zh) | 页面投放的方法、装置、存储介质及电子设备 | |
CN112445790B (zh) | 一种报表数据存储方法、装置、设备及介质 | |
CN113626110A (zh) | 数据动态处理方法、设备、存储介质及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | 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 |