一种数据格式校验方法、装置、设备及存储介质与流程
未命名
08-29
阅读:154
评论:0

技术领域:
:,特别是涉及一种数据格式校验方法、装置、设备及存储介质。
背景技术:
::2.目前,银行业务中存在大量以数据为载体的信息,例如存在由环球同业银行金融电讯协会(societyforworldwideinterbankfinancialtelecommunications.c,简称swift)提供格式标准的swift报文数据,以及其他类似于swift报文的具有格式标准的数据等,这些数据大多以字段为单位进行管理,来自不同的输入渠道,在多个系统之间流转,而格式标准正是这些数据可以在不同系统之间顺畅流转并被正确识别和使用的基础。3.为了确保数据可以在不同系统之间顺畅流转并被正确识别和使用,目前,一个数据在多个系统之间流转的过程中,各系统都要对这一数据做类似的数据格式检查,这种重复劳动造成了极大的资源浪费,而且,由于各个系统的开发人员对于数据格式校验的规则可能存在理解差异,可能会出现同一数据在a系统可以合法输入,在b系统却显示报错,徒增两个系统的运维和开发人员的纠错工作量。4.由此,如何统一数据格式校验标准,使不同的系统能够使用同一种数据格式校验方法对数据格式进行校验,以减少资源浪费,成为目前亟待解决的问题。技术实现要素:5.基于上述问题,本技术提供了一种数据格式校验方法、装置、设备及存储介质,可以统一数据格式校验标准,使不同的系统能够使用同一种数据格式校验方法对数据格式进行校验。6.本技术实施例公开了如下技术方案:7.第一方面,本技术提供了一种数据格式校验方法,所述方法包括:8.获取待校验数据对应的标准数据结构,每个所述待校验数据对应一个标准数据结构;9.根据所述标准数据结构,获取与所述标准数据结构对应的正则表达式;10.基于所述正则表达式和所述标准数据结构,匹配所述待校验数据,得到所述待校验数据的第一数据格式校验结果。11.可选地,所述获取待校验数据对应的标准数据结构,包括:12.识别待校验数据对应的标准格式表达式,所述标准格式表达式中的元素包括所述待校验数据中各个原子字段对应的合法参数集的参数集标识;13.解析所述标准格式表达式,得到所述标准格式表达式中的元素对应的合法参数集;14.基于所述标准格式表达式与所述标准格式表达式中的元素对应的合法参数集,构造树状的标准数据结构。15.可选地,所述根据所述标准数据结构,获取与所述标准数据结构对应的正则表达式,包括:16.根据所述标准数据结构,获取所述标准数据结构中子节点对应的正则表达式片段;17.基于所述标准数据结构中子节点的位置和所述子节点对应的正则表达式片段,按照所述标准数据结构的树状结构组装所述正则表达式片段得到与所述标准数据结构对应的正则表达式。18.可选地,所述方法还包括:19.接收合法参数集的更新请求;20.根据所述更新请求,更新所述合法参数集中包含的参数,所述合法参数集包括字符集、换行符定义、组件定义以及规则定义中的至少一项。21.可选地,所述基于所述原子字段匹配结果,得到所述待校验数据的第一数据格式校验结果之后,所述方法还包括:22.获取所述待校验数据对应的标准数据结构预先配置的限定规则;23.基于所述限定规则,判断所述待校验数据是否符合所述限定规则以得到所述待校验数据的第二数据格式校验结果。24.可选地,所述识别待校验数据对应的标准数据结构之前,所述方法还包括:25.获取预先配置的标准格式表达式中作用于相同对象的多个限定规则之间的规则关系;所述规则关系包括依赖关系和互斥关系;26.基于所述规则关系得到所述标准格式表达式的关系校验结果。27.第二方面,本技术提供了一种数据格式校验装置,所述装置包括:第一获取模块,第二获取模块以及格式校验模块;28.所述第一获取模块,用于获取待校验数据对应的标准数据结构,每个所述待校验数据对应一个标准数据结构;29.所述第二获取模块,用于根据所述标准数据结构,获取与所述标准数据结构对应的正则表达式;30.所述格式校验模块,用于基于所述正则表达式和所述标准数据结构,匹配所述待校验数据,得到所述待校验数据的第一数据格式校验结果。31.可选地,所述装置还包括:规则校验模块;32.所述规则校验模块,用于获取所述待校验数据对应的标准数据结构预先配置的限定规则;基于所述限定规则,判断所述待校验数据是否符合所述限定规则以得到所述待校验数据的第二数据格式校验结果。33.第三方面,本技术提供了一种数据格式校验设备,所述数据格式校验设备包括:存储器和处理器;34.所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;35.所述处理器用于根据所述程序代码中的指令执行上述第一方面中任一项所述的数据格式校验方法的步骤。36.第四方面,本技术提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在数据格式校验设备上运行时,所述数据格式校验设备执行上述第一方面中任一项所述的数据格式校验方法的步骤。37.相较于现有技术,本技术具有以下有益效果:38.本技术提供了一种数据格式校验方法,该方法中,首先,获取待校验数据对应的标准数据结构,每个所述待校验数据对应一个标准数据结构;然后,根据所述标准数据结构,获取与所述标准数据结构对应的正则表达式;最后,基于所述正则表达式和所述标准数据结构,匹配所述待校验数据,得到所述待校验数据的第一数据格式校验结果。由此,统一了数据格式校验标准,可以使不同的系统能够使用同一种数据格式校验方法对数据格式进行校验,减少了资源浪费,避免了由于不同系统开发人员对于数据格式校验标准的理解差异导致的不同系统对于同一数据的校验结果不一致的情况。附图说明39.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。40.图1为本技术实施例提供的一种数据格式校验方法流程图;41.图2为本技术实施例提供的树状标准数据结构示意图;42.图3为本技术实施例提供的另一种数据格式校验方法流程图;43.图4为本技术实施例提供的一种数据格式校验装置示意图;44.图5为本技术实施例提供的另一种数据格式校验装置示意图;45.图6为本技术实施例提供的一种数据格式校验设备结构图。具体实施方式46.需要说明的是,本发明提供的一种数据格式校验方法、装置、设备及存储介质可用于金融领域或其他领域,例如,可用于金融领域中的报文数据校验应用场景。其他领域为除金融领域之外的任意领域,例如,数据处理
技术领域:
:。上述仅为示例,并不对本发明提供的一种数据格式校验方法、装置、设备及存储介质的应用领域进行限定。47.本技术说明书和权利要求书及附图说明中的术语“第一”、“第二”“第三”、和“第四”等是用于区别不同对象,而不是用于限定特定顺序。48.在本技术实施例中,“作为示例”或者“例如”等词用于表示作例子、例证或说明。本技术实施例中被描述为“作为示例”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“作为示例”或者“例如”等词旨在以具体方式呈现相关概念。49.本技术的实施方式部分使用的术语仅用于对本技术的具体实施例进行解释,而非旨在限定本技术。50.为了使本
技术领域:
:的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。51.示例性地,本技术所提供的数据格式校验方法中预先配置了合法参数集,并存储为参数文件,合法参数集可以包括字符集、换行符定义、组件定义、规则定义以及格式表达式定义,其中,字符集用于定义格式表达式中需要使用的例如数字、字母、符号等字符集合的字符集,语法可以是字符集名=字符集合表达式,例如,可以使用a=[a-z]定义字符集a中的字符为a-z的大写英文字母;换行符定义用于确定格式表达式中将使用"$"匹配数据中哪种换行符;组件定义用于定义可用于格式表达式的组件名,组件是为重用而存在的,使用组件相当于引用另一个已存在的表达式,例如,可以定义为使用尖括号《》表示组件;规则定义用于扩展检查逻辑,规则是可以重用的,且既可以用于组件也可以用于整个格式表达式,例如,可以定义为使用花括号{}表示规则;格式表达式定义可以是例如32a=《date2》《cur》《amount15》的定义,用于定义swiftmt103报文的32场的标准格式表达式。[0052]具体地,对格式表达式的定义可以包括但不限于:格式表达式中可以使用反斜线(\)后面跟格式表达式保留字符或标识符可用字符来匹配单列字符,即反斜线后面的字符要求在待校验数据中原样出现;格式表达式中可以使用“数字+字符集名”、“数字+!+字符集名”和/或“(上界数字+下界数字)+字符集名”等语法来匹配简单串,例如,3x可以用于匹配长度为1-3的x字符集内的字符,(3,34)x可以用于匹配长度为3-34的x字符集内的字符;格式表达式中可以使用单字符与简单串表达式相连形成复合串表达式的语法匹配复合串;格式表达式中可以引用组件;格式表达式与待校验数据的标识的对应关系等,例如,32a=《date2》《cur》《amount15》可以表示swiftmt103报文的32场数据的标识对应的标准格式表达式为《date2》《cur》《amount15》。[0053]参见图1,该图为本技术实施例提供的一种数据格式校验方法流程图,可应用于数据校验装置,该方法包括:[0054]s101:数据校验装置获取待校验数据对应的标准数据结构,每个待校验数据对应一个标准数据结构。[0055]示例性地,待校验数据可以是swiftmt类报文场的数据,例如,可以是swiftmt103报文的32场的数据。数据校验装置可以识别待校验数据的标识,用于查找或生成待校验数据对应的标准格式表达式,解析标准格式表达式,可以得到标准格式表达式中的元素对应的合法参数集,基于标准格式表达式与标准格式表达式中的元素对应的合法参数集,可以构造如图2所示的树状标准数据结构。[0056]具体地,以swiftmt103报文32场的数据作为待校验数据为例,数据校验装置可以通过识别“field32”这一待校验数据标识,从参数文件中找到标识为“field32”的标准格式表达式:“《date6》《cur》《amount15》”,可以通过解析这一标准格式表达式构造出如图2所示的树状标准数据结构。[0057]s102:数据校验装置根据标准数据结构,获取与标准数据结构对应的正则表达式。[0058]示例性地,正则表达式可以是数据校验装置将树状的标准数据结构中各子节点所定义的正则表达式片段基于标准数据结构的树状结构组装得到的。例如,([a-z]{3})为图2所示的标准数据结构中的一个子节点对应的正则表达式片段,数据校验装置将多个例如([a-z]{3})的正则表达式片段根据标准数据结构的树状结构进行组装,即得到标准数据结构对应的正则表达式,如图2所示的由标准格式表达式解析得到的标准数据结构所对应的正则表达式为:((\d{6})([a-z]{3})(\d+,\d*))。[0059]通过这种方法获取正则表达式,可以避免直接构造正则表达式时在需要限定字符集时正则表达式过于冗长,以至于难以发现细微的差别,并可以大量减少对同一个概念进行重复编写的情况,从而减少同一个概念有多个描述的情况。[0060]s103:数据校验装置基于正则表达式和标准数据结构,匹配待校验数据,得到待校验数据的第一数据格式校验结果。[0061]例如,待校验数据可以是“211231cny123,45”这一字符串,可以根据标准数据结构对应的正则表达式((\d{6})([a-z]{3})(\d+,\d*))匹配该待校验数据,可以基于正则表达式将该待校验数据分为“211231”、“cny”以及“123,45”三个原子字段。将原子字段“211231”与正则表达式片段(\d{6})匹配,以校验前6位是否为0~9中的数字;原子字段“cny”与正则表达式片段([a-z]{3})匹配,以校验7~9位是否为a~z中的大写英文字母;原子字段“123,45”与正则表达式片段(\d+,\d*)匹配,以校验最后几位是否为以逗号分隔的数字。若上述匹配均通过,则可以基于标准数据结构中各个节点配置的其他规则对待校验数据中位于相应节点的数据进行匹配,例如,在图2提供的标准数据结构中,原子字段“211231”所在子节点配置了《date6》这一组件,将基于这一组件进一步判断原子字段“211231”是否符合组件内规定的六位日期格式,如此使用标准数据结构匹配待校验数据,得到待校验数据的第一数据格式校验结果。例如,待校验数据与正则表达式匹配成功,且待校验数据中的各个原子字段与其对应的标准数据结构的子节点配置于组件上的限定规则也全部匹配成功,则可以认为该待校验数据的第一数据格式校验结果为正确。[0062]综上所述,该方法统一了数据格式校验标准,使不同的系统能够使用同一种数据格式校验方法对数据格式进行校验,可以减少资源浪费,避免由于不同系统开发人员对于数据格式校验标准的理解差异导致的不同系统对于同一数据的校验结果不一致的情况。[0063]参见图3,该图为本技术实施例提供的另一种数据格式校验方法流程图,该方法包括:[0064]s301:数据校验装置识别待校验数据对应的标准格式表达式,标准格式表达式中的元素包括待校验数据中原子字段对应的合法参数集的参数集标识。[0065]作为示例,一个待校验数据对应的标准格式表达式可以是《date6》《cur》《amount15》,其中,《date6》、《cur》以及《amount15》均为组件;此外,标准格式表达式中也可以包含例如6!n这一表示6个数字字符的格式表达式,上述组件及格式表达式作为相应字符串所需符合的合法参数集的标识出现时,均可描述为参数集标识。标准格式表达式《date6》《cur》《amount15》可以表示数据格式要求为6位日期+3位货币代码+15位以内的以逗号为小数点的金额;合法参数集既可以是一个原子字段所对应的基础格式表达式,也可以是为重用而存在的组件。上述仅为示例,不对本技术实施例提供的参数集标识的实际命名方法等进行限定。[0066]s302:数据校验装置解析标准格式表达式,得到标准格式表达式中的元素对应的合法参数集,并基于标准格式表达式与标准格式表达式中的元素对应的合法参数集构造树状的标准数据结构。[0067]以标准格式表达式《date6》《cur》《amount15》为例,对其进行解析,可以得到以下内容:该标准格式表达式对应的树状标准数据结构具有三个子节点《date6》、《cur》以及《amount15》,其中,子节点《date6》对应的正则表达式片段为(\d{6}),且该节点配置了组件《date6》,正则表达式片段(\d{6})与组件《date6》各自对应的合法参数集共同组成了该节点的合法参数集,同理,子节点《cur》对应的正则表达式片段为([a-z]{3})且该节点配置了组件《cur》,子节点《amount15》对应的正则表达式片段为(\d+,\d*)且该节点配置了组件《amount15》,由此,可以得到例如图2所示的树状的标准数据结构。[0068]优选地,标准数据结构可以由validationpattern类的各种子类构成。validationpattern类的主要子类包括:字符集表达式charpattern,序列结构表达式sequencepattern,可选结构表达式optionalpattern,组件的父类namedpattern以及自定义表达式anythingpattern等,其中,组件是为重用而存在的,使用组件相当于引用另一个已存在的表达式,例如,《date6》这一参数集标识也是一个组件名。[0069]s303:数据校验装置根据标准数据结构,获取标准数据结构中子节点对应的正则表达式片段。[0070]s304:数据校验装置基于标准数据结构中子节点的位置和子节点对应的正则表达式片段,按照标准数据结构的树状结构组装正则表达式片段得到与标准数据结构对应的正则表达式。[0071]s305:数据校验装置基于正则表达式和标准数据结构,匹配待校验数据,得到待校验数据的第一数据格式校验结果。[0072]s306:数据校验装置获取待校验数据对应的标准格式表达式预先配置的限定规则。[0073]可选地,当只进行字符检查无法满足对待校验数据的数据格式校验需求时,可以使用限定规则增加更多的检查逻辑。标准格式表达式预先配置的限定规则可以包括作用目标以及限定规则描述两部分,作用目标可以格式表达式中的组件,也可以是整个格式表达式,作用于整个格式表达式的限定规则与作用于组件的限定规则用法相同,例如,对于“字符串的第一位为数字或大写字母”这一限定规则,既可用于整个格式表达式以限定整个待校验数据的第一位为数字或大写字母,也可用于组件用以限定待校验数据中受该组件限定的部分字符串中的第一位为数字或大写字母;限定规则描述可以是一段无二义性、可用程序校验的文字描述信息。例如限定规则可以是“{in_curr_table}=c,限定有效的货币代码,且该代码已登记在《公共参数-有效货币码表》中”,其中,{in_curr_table}是限定规则编码,c表示这个限定规则作用于组件,“限定有效的货币代码,且该代码已登记在《公共参数-有效货币码表》中”是这个限定规则的描述信息。[0074]优选地,对于标准格式表达式中的一个或多个组件,可以有一个组件对应一个或多个限定规则,也可以存在没有对应限定规则的组件。[0075]s307:数据校验装置基于限定规则,判断待校验数据是否符合限定规则以得到待校验数据的第二数据格式校验结果。[0076]示例性地,可以在遍历标准数据结构中的树节点时执行本步骤。对于为标准格式表达式中的多个组件分别配置的多个限定规则,若待校验数据中全部组件均符合其对应的限定规则,且该待校验数据也符合对整个标准格式表达式设置的多个限定规则,则可以得到待校验数据的第二数据格式校验结果为数据格式正确;若待校验数据中的任一组件不符合其对应的限定规则,或该待校验数据不符合对整个标准格式表达式设置的多个限定规则中的任意一个,则可以得到待校验数据的第二数据格式校验结果为数据格式错误。[0077]可选地,若一个格式表达式或一个组件所预先配置的限定规则中,依赖了预先配置的其他限定规则,则这些被依赖的限定规则也是这个格式表达式或组件对应的数据内容应遵循的限定规则;此时,若一个格式表达式或一个组件预先配置或因依赖而引入的多个限定规则存在互斥关系,则可以得到例如格式表达式校验异常的校验结果,表示为同一格式表达式或同一组件的定义内部自相矛盾。[0078]由此,可以基于预先配置的限定规则关系对格式表达式进行辅助检查,避免标准格式表达式自相矛盾。[0079]可选地,当第一数据格式校验结果以及第二数据校验结果均为数据格式正确时,数据校验装置输出校验结果为待校验数据通过数据格式校验,若其中一个为数据格式错误,则数据校验装置输出校验结果为待校验数据未通过数据格式校验,此时,数据校验装置报错,优选地,可以反馈是哪一位置的字符导致哪一判断结果为否,例如,可以反馈待校验数据中哪一部分的数据内容违反了哪一个校验规则,校验规则可以包括但不限于上述正则表达式所定义的校验规则、组件所定义的校验规则以及限定规则所定义的校验规则。[0080]可选地,当第一数据格式校验结果为数据格式错误时,可以直接输出例如待校验数据未通过数据格式校验的校验结果,不再执行s307-s308所述的步骤。[0081]由此,可以通过标准格式表达式预先配置的限定规则为数据校验增加更多的检查逻辑,并让这些检查逻辑可以复用,可以大量减少对同一个概念进行重复编写的情况,从而减少同一个概念有多个描述的情况。[0082]可选地,在本技术提供的另一些实施例中,该数据格式校验方法还可以在识别待校验数据对应的标准格式表达式之前,对标准格式表达式预先配置的规则进行校验,具体可以包括以下步骤:[0083]s401:数据校验装置获取标准格式表达式预先配置的作用于相同对象的多个限定规则之间的规则关系。[0084]示例性地,标准格式表达式中的一个组件或整个标准格式表达式可以对应一个或多个限定规则,可以为多个规则配置相应的规则关系,规则关系用于检查作用于同一待校验数据或同一待校验数据中的同一组件的多个限定规则之间是否自相矛盾,也即规则关系使用在作用于同一对象的限定规则之间。规则关系包括依赖关系和互斥关系,其中,依赖关系可以表示多个限定规则中的一个生效,则存在依赖关系的其余限定规则都生效;而当出现多个限定规则中的一个生效时,其他限定规则必然无法生效的情况,则可以认为这些限定规则的规则关系为互斥关系,此外,通过依赖关系传递而生效的众多限定规则之中,某个限定规则的生效会导致另一部分限定规则不能生效,从而导致这些限定规则不能同时定义在相同的对象上。上述仅为示例,不对依赖关系和互斥关系可以约束的限定规则的数量进行限定。[0085]s402:数据校验装置基于规则关系得到标准格式表达式的关系校验结果。[0086]示例性地,若整个标准格式表达式或一个标准格式表达式中的一个组件预先配置的多个自定义规则满足互斥关系,则可以得到例如结构校验异常的结构校验结果,表示为同一标准格式表达式或同一标准格式表达式中的同一组件配置的多个自定义规则自相矛盾;若一个标准格式表达式或一个标准格式表达式中的一个组件预先配置的多个自定义规则满足依赖关系或无规则关系对其进行约束,则可以得到例如关系校验通过的关系校验结果。[0087]由此,可以基于预先配置的规则关系对标准格式表达式进行辅助检查,避免标准格式表达式内部自相矛盾。[0088]可选地,在本技术提供的又一些实施例中,该数据格式校验方法还可以包括更新合法参数集,具体地,可以包括以下步骤:[0089]s501:数据校验装置接收合法参数集的更新请求。[0090]优选地,更新请求可以包括新增合法参数集、删除合法参数集以及修改原有合法参数集中包含的参数,还可以包括变更合法参数集与原子字段之间的对应关系等,其中,参数集可以包括字符集、换行符定义、组件定义、规则定义以及格式表达式定义中的至少一项。作为示例,字符集可以包含所有可打印字符,使用正则表达式语法,例如,字符集a可以是a=[a-z]。[0091]s502:数据校验装置根据更新请求,更新合法参数集中包含的参数。[0092]由此,可以基于实际需求对合法参数集进行更新。[0093]参见图4,该图为本技术实施例提供的一种数据格式校验装置示意图,该装置包括:第一获取模块401,第二获取模块402以及格式校验模块403。[0094]第一获取模块401,用于获取待校验数据对应的标准数据结构,待校验数据对应的标准数据结构唯一。[0095]第二获取模块402,用于根据标准数据结构,获取与标准数据结构对应的正则表达式。[0096]格式校验模块403,用于基于正则表达式和标准数据结构,匹配待校验数据,得到待校验数据的第一数据格式校验结果。[0097]本技术通过首先获取待校验数据对应的标准数据结构,每个所述待校验数据对应一个标准数据结构;然后,根据所述标准数据结构,获取与所述标准数据结构对应的正则表达式;最后,基于所述正则表达式和所述标准数据结构,匹配所述待校验数据,得到所述待校验数据的第一数据格式校验结果。由此,统一了数据格式校验标准,使不同的系统能够使用同一种数据格式校验方法对数据格式进行校验,减少了资源浪费,避免了由于不同系统开发人员对于数据格式校验标准的理解差异导致的不同系统对于同一数据的校验结果不一致的情况。[0098]参见图5,该图为本技术实施例提供的另一种数据格式校验装置示意图,该装置包括:第一获取模块501,第二获取模块502,格式校验模块503,参数模块504,限定规则校验模块505以及规则关系校验模块506。[0099]第一获取模块501,用于获取待校验数据对应的标准数据结构,待校验数据对应的标准数据结构唯一。[0100]第二获取模块502,用于根据标准数据结构,获取与标准数据结构对应的正则表达式。[0101]格式校验模块503,用于基于正则表达式和标准数据结构,匹配待校验数据,得到待校验数据的第一数据格式校验结果。[0102]参数模块504,用于接收合法参数集的更新请求;根据更新请求,更新合法参数集中包含的参数,参数集包括字符集、换行符定义、组件定义、规则定义以及格式表达式定义中的至少一项。[0103]规则校验模块505,用于获取待校验数据对应的标准数据结构预先配置的限定规则;基于限定规则,判断待校验数据是否符合限定规则以得到待校验数据的第二数据格式校验结果。[0104]关系校验模块506,用于获取标准格式表达式预先配置的作用于相同对象的多个限定规则之间的规则关系;规则关系包括依赖关系和互斥关系;基于规则关系得到标准格式表达式的关系校验结果。[0105]参见图6,该图为本技术实施例提供的一种数据格式校验设备结构图,该设备包括:存储器601和处理器602。[0106]存储器601,用于存储程序代码,并将所述程序代码传输给所述处理器;[0107]处理器602,用于根据所述程序代码中的指令执行上述数据格式校验方法的步骤。[0108]本技术还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当所述计算机指令在数据格式校验设备上运行时,数据格式校验设备执行上述数据格式校验方法的步骤。[0109]需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元提示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。[0110]以上所述,仅为本技术的一种具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本
技术领域:
:的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应该以权利要求的保护范围为准。当前第1页12当前第1页12
技术特征:
1.一种数据格式校验方法,其特征在于,所述方法包括:获取待校验数据对应的标准数据结构,每个所述待校验数据对应一个标准数据结构;根据所述标准数据结构,获取与所述标准数据结构对应的正则表达式;基于所述正则表达式和所述标准数据结构,匹配所述待校验数据,得到所述待校验数据的第一数据格式校验结果。2.根据权利要求1所述的方法,其特征在于,所述获取待校验数据对应的标准数据结构,包括:识别待校验数据对应的标准格式表达式,所述标准格式表达式中的元素包括所述待校验数据中各个原子字段对应的合法参数集的参数集标识;解析所述标准格式表达式,得到所述标准格式表达式中的元素对应的合法参数集;基于所述标准格式表达式与所述标准格式表达式中的元素对应的合法参数集,构造树状的标准数据结构。3.根据权利要求1所述的方法,其特征在于,所述根据所述标准数据结构,获取与所述标准数据结构对应的正则表达式,包括:根据所述标准数据结构,获取所述标准数据结构中子节点对应的正则表达式片段;基于所述标准数据结构中子节点的位置和所述子节点对应的正则表达式片段,按照所述标准数据结构的树状结构组装所述正则表达式片段得到与所述标准数据结构对应的正则表达式。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收合法参数集的更新请求;根据所述更新请求,更新所述合法参数集中包含的参数,所述合法参数集包括字符集、换行符定义、组件定义以及规则定义中的至少一项。5.根据权利要求1所述的方法,其特征在于,所述基于所述原子字段匹配结果,得到所述待校验数据的第一数据格式校验结果之后,所述方法还包括:获取所述待校验数据对应的标准数据结构预先配置的限定规则;基于所述限定规则,判断所述待校验数据是否符合所述限定规则以得到所述待校验数据的第二数据格式校验结果。6.根据权利要求5所述的方法,其特征在于,所述识别待校验数据对应的标准数据结构之前,所述方法还包括:获取标准格式表达式预先配置的作用于相同对象的多个限定规则之间的规则关系;所述规则关系包括依赖关系和互斥关系;基于所述规则关系得到所述标准格式表达式的关系校验结果。7.一种数据格式校验装置,其特征在于,所述装置包括:第一获取模块,第二获取模块以及格式校验模块;所述第一获取模块,用于获取待校验数据对应的标准数据结构,每个所述待校验数据对应一个标准数据结构;所述第二获取模块,用于根据所述标准数据结构,获取与所述标准数据结构对应的正则表达式;所述格式校验模块,用于基于所述正则表达式和所述标准数据结构,匹配所述待校验
数据,得到所述待校验数据的第一数据格式校验结果。8.根据权利要求7所述的装置,其特征在于,所述装置还包括:规则校验模块;所述规则校验模块,用于获取所述待校验数据对应的标准数据结构预先配置的限定规则;基于所述限定规则,判断所述待校验数据是否符合所述限定规则以得到所述待校验数据的第二数据格式校验结果。9.一种数据格式校验设备,其特征在于,所述数据格式校验设备包括:存储器和处理器;所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;所述处理器用于根据所述程序代码中的指令执行权利要求1-6中任一项所述的数据格式校验方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在数据格式校验设备上运行时,所述数据格式校验设备执行如权利要求1-6中任一项所述的数据格式校验方法的步骤。
技术总结
本申请公开了一种数据格式校验方法、装置、设备及存储介质,应用于金融领域,该方法中,首先,获取待校验数据对应的标准数据结构,每个所述待校验数据对应一个标准数据结构;然后,根据所述标准数据结构,获取与所述标准数据结构对应的正则表达式;最后,基于所述正则表达式和所述标准数据结构,匹配所述待校验数据,得到所述待校验数据的第一数据格式校验结果。由此,统一了数据格式校验标准,可以使不同的系统能够使用同一种数据格式校验方法对数据格式进行校验,减少了资源浪费。减少了资源浪费。减少了资源浪费。
技术研发人员:庄为 高芳 张凤玲 吴嘉杰
受保护的技术使用者:中国银行股份有限公司
技术研发日:2023.05.30
技术公布日:2023/8/28
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种晶圆镀液的快速降温设备的制作方法 下一篇:一种风电场监测预警系统及方法