CN109766483A - 正则表达式生成方法、装置、计算机设备和存储介质 - Google Patents
正则表达式生成方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109766483A CN109766483A CN201811621646.6A CN201811621646A CN109766483A CN 109766483 A CN109766483 A CN 109766483A CN 201811621646 A CN201811621646 A CN 201811621646A CN 109766483 A CN109766483 A CN 109766483A
- Authority
- CN
- China
- Prior art keywords
- regular expression
- parameter
- regularity conditions
- expression
- target
- 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
- 230000014509 gene expression Effects 0.000 title claims abstract description 374
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000004590 computer program Methods 0.000 claims description 17
- 238000012790 confirmation Methods 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 5
- 238000005457 optimization Methods 0.000 abstract 1
- 230000009471 action Effects 0.000 description 13
- 238000012795 verification Methods 0.000 description 9
- 241000208340 Araliaceae Species 0.000 description 6
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 6
- 235000003140 Panax quinquefolius Nutrition 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 235000008434 ginseng Nutrition 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000012937 correction Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000011897 real-time detection Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及过程优化技术,提供了一种正则表达式生成方法、装置、计算机设备和存储介质。所述方法包括:接收终端发送的正则表达式生成指令;根据所述正则表达式生成指令获取正则表达式类型、正则条件标识和所述正则条件标识对应的正则条件参数;当所述正则表达式类型为非常规类型时,根据所述正则条件标识查询相应的表达式生成规则参数;基于所述表达式生成规则参数生成与相应的所述正则条件参数所对应的正则表达式;按照预设拼接方式将对应于所述正则表达式生成指令生成的各所述正则表达式进行拼接,得到目标正则表达式。采用本方法能够生成与复杂约束条件对应的目标正则表达式,提高了正则表达式的灵活性和适用范围。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种正则表达式生成方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,越来越多的业务办理或业务数据处理依赖于计算机来完成。在业务办理或业务数据处理过程中,通常会对数据设置约束条件,当用户通过终端录入的数据符合相应的约束条件时,则对应于该符合约束条件的数据执行后续操作,由此过滤掉不符合约束条件的数据,减轻了服务器的数据处理压力。在校验数据是否符合约束条件时,通常是生成与约束条件对应的正则表达式,以基于正则表达式来对数据进行校验。
目前,通常是基于现有的正则表达式生成工具来生成与约束条件对应的正则表达式。但是,现有的正则表达式生成工具仅能生成约束条件单一的正则表达式,比如仅提供身份证号、手机号或者邮编号等常见的单一约束条件所对应的正则表达式,而不适用于约束条件复杂的情况,存在灵活性差,适用范围小的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够适用于复杂约束条件的正则表达式生成方法、装置、计算机设备和存储介质。
一种正则表达式生成方法,所述方法包括:
接收终端发送的正则表达式生成指令;
根据所述正则表达式生成指令获取正则表达式类型、正则条件标识和所述正则条件标识对应的正则条件参数;
当所述正则表达式类型为非常规类型时,根据所述正则条件标识查询相应的表达式生成规则参数;
基于所述表达式生成规则参数生成与相应的所述正则条件参数所对应的正则表达式;
按照预设拼接方式将对应于所述正则表达式生成指令生成的各所述正则表达式进行拼接,得到目标正则表达式。
在其中一个实施例中,所述基于所述表达式生成规则参数生成与相应的所述正则条件参数所对应的正则表达式,包括:
当根据所述正则条件标识查询到多个候选表达式生成规则参数时,从所述多个候选表达式生成规则参数中筛选与所述正则条件参数相匹配的表达式生成规则参数;
基于筛选出的所述表达式生成规则参数生成与所述正则条件参数对应的正则表达式。
在其中一个实施例中,所述根据所述正则表达式生成指令获取正则表达式类型、正则条件标识和所述正则条件标识对应的正则条件参数之后,所述方法还包括:
当所述正则表达式类型为常规类型时,查询与所述正则条件标识对应的表达式生成规则参数;
基于所述表达式生成规则参数,根据所述正则条件参数生成相应的正则表达式,作为对应于所述正则表达式生成指令生成的目标正则表达式。
在其中一个实施例中,所述方法还包括:
接收所述终端发送的参数配置指令;
根据所述参数配置指令获取待配置的目标正则条件标识、目标正则条件参数和目标表达式生成规则参数;
将所述目标正则条件标识、所述目标正则条件参数和所述目标表达式生成规则参数关联存储。
在其中一个实施例中,所述方法还包括:
接收终端发送的数据校验指令;
根据所述数据校验指令获取待校验的数据和数据标识;
根据所述数据标识查询预存储的目标正则表达式;
基于查询的所述目标正则表达式对所述数据进行校验。
在其中一个实施例中,所述基于查询的所述目标正则表达式对所述数据进行校验,包括:
从所述数据中提取与查询的所述目标正则表达式相匹配的目标数据;
将所述目标数据发送至所述终端进行展示;
当接收到所述终端对应反馈的表示确认目标数据无误的提示信息时,完成对应于所述数据校验指令的响应操作。
一种正则表达式生成装置,所述装置包括:
接收模块,用于接收终端发送的正则表达式生成指令;
获取模块,用于根据所述正则表达式生成指令获取正则表达式类型、正则条件标识和所述正则条件标识对应的正则条件参数;
查询模块,用于当所述正则表达式类型为非常规类型时,根据所述正则条件标识查询相应的表达式生成规则参数;
生成模块,用于基于所述表达式生成规则参数生成与相应的所述正则条件参数所对应的正则表达式;
拼接模块,用于按照预设拼接方式将对应于所述正则表达式生成指令生成的各所述正则表达式进行拼接,得到目标正则表达式。
在其中一个实施例中,所述装置还包括:
配置模块,用于接收所述终端发送的参数配置指令;根据所述参数配置指令获取待配置的目标正则条件标识和所述目标正则条件标识对应的目标正则条件参数,以及所述目标正则条件参数对应的目标表达式生成规则参数;将所述目标正则条件标识、所述目标正则条件参数和所述目标表达式生成规则参数关联存储。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述各个实施例中所述的正则表达式生成方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述各个实施例中所述的正则表达式生成方法的步骤。
上述正则表达式生成方法、装置、计算机设备和存储介质,根据终端发送的正则表达式生成指令确定待生成的正则表达式类型,以及用作约束条件的正则条件标识和相应的正则条件参数,并根据正则条件标识和正则条件参数,按照正则表达式类型对应的正则表达式生成方式生成相应的目标正则表达式。当正则表达式类型为非常规类型时,表明用作约束条件的正则条件标识多于一个,则分别基于各正则条件标识对应的表达式生成规则参数,生成与相应的正则条件参数所对应的正则表达式,并对各正则条件参数对应的正则表达式进行拼接,得到目标正则表达式。由此,当约束条件复杂时,基于上述非常规类型的正则表达式生成方式来生成目标正则表达式,且复杂的约束条件可通过多个正则条件标识和相应的正则条件参数来限定,提高了正则表达式的灵活性和适用范围。
附图说明
图1为一个实施例中正则表达式生成方法的应用场景图;
图2为一个实施例中正则表达式生成方法的流程示意图;
图3为另一个实施例中正则表达式生成方法的流程示意图;
图4为一个实施例中正则表达式生成装置的结构框图;
图5为另一个实施例中正则表达式生成装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的正则表达式生成方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104通过网络进行通信。服务器104根据终端102发送的正则表达式获取相应的正则表达式类型、正则条件标识和正则条件参数;当正则表达式类型为非常规类型时,服务器104基于正则条件标识对应的正则表达式生成规则参数,生成与相应的正则条件参数对应的正则表达式,并将各正则表达式进行拼接得到目标正则表达式。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种正则表达式生成方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
S202,接收终端发送的正则表达式生成指令。
其中,正则表达式生成指令是用于触发正则表达式生成操作的指令。正则表达式生成指令用于指示服务器根据正则条件标识和相应的正则条件参数,按照正则表达式类型对应的正则表达式生成方式生成目标正则表达式。正则表达式生成指令可包括用作约束条件的正则条件标识和相应的正则条件参数。
具体地,终端实时检测用户的预设触发操作。当检测到用户在用户操作界面上的预设触发操作时,终端根据所检测到的预设触发操作确定用户在用户操作界面上预选取的正则条件,得到相应的正则条件标识和正则条件参数。终端根据预选取的正则条件对应的正则条件标识和正则条件参数,生成相应的正则表达式生成指令,并将所生成的正则表达式生成指令发送至服务器,以使得服务器根据该正则表达式生成指令生成相应的目标正则表达式。
在一个实施例中,终端根据检测到的预设触发操作确定待生成的正则表达式所对应的正则表达式类型,并根据正则表达式类型,以及预选取的正则条件对应的正则条件标识和正则条件参数,生成相应的正则表达式生成指令。预设触发操作比如用户对预设触发控件的点击、按压或滑动等操作。可以理解的是,终端可根据预选取的正则条件的数量或正则条件标识确定正则表达式类型,也可根据当前检测到的预设触发操作所对应的用户操作界面确定正则表达式类型,还可根据预设触发操作对应的预设触发控件确定正则表达式类型。
S204,根据正则表达式生成指令获取正则表达式类型、正则条件标识和正则条件标识对应的正则条件参数。
其中,正则表达式类型是指待生成的目标正则表达式的类型。正则表达式类型可用于表征目标正则表达式所对应的约束条件的复杂度,即可用于表征与目标正则表达式相匹配的数据所对应的约束条件的复杂度。正则表达式类型包括常规类型和非常规类型。常规类型的目标正则表达式对应单一的约束条件,也即对应单一的正则条件标识和相应的正则条件参数。非常规类型的目标正则表达式通常对应多于一个的约束条件,也即对应多于一个的正则条件标识,以及各正则条件标识所对应的正则条件参数。
正则条件标识用于唯一标识正则条件。正则条件标识具体可以是由数字、字母和符号等字符中的至少一种组成的字符串。正则条件是指生成正则表达式时所依据的约束条件,比如字符类型、匹配个数、匹配区域、匹配范围、大小写限制或重复次数等。正则条件参数是对应于正则条件预配置的可选参数。举例说明,字符类型对应的正则条件参数为数字、字母或特殊字符,特殊字符比如#、&或*等;匹配区域对应的正则条件参数为边界、中间、前或后;匹配范围对应的正则条件参数为全局匹配或部分匹配;大小写限制对应的正则条件参数为全是大写或全是小写;匹配个数是指待匹配的字符个数,比如5;重复次数是指同一字符或字符串的出现次数,比如1。匹配个数和重复次数可由用户通过终端手动录入,或者在预配置的下拉框中选取。
具体地,服务器解析所接收到的正则表达式生成指令,得到待生成的目标正则表达式对应的正则表达式类型,以及生成目标正则表达式时所依据的正则条件标识和正则条件标识所对应的正则条件参数。
在一个实施例中,终端将根据检测到的预设触发操作所确定的正则表达式类型、正则条件标识和相应的正则条件参数缓存在本地,根据该预设触发操作触发生成正则表达式生成指令并发至服务器。服务器根据接收到的正则表达式生成指令,从终端获取相应的正则表达式类型、正则条件标识和正则条件参数。
在一个实施例中,对应于不同类型的正则表达式预配置有不同的正则条件标识。服务器根据接收到的正则表达式生成指令得到正则条件标识和相应的正则条件参数,并根据正则条件标识确定相应的正则表达式类型。
S206,当正则表达式类型为非常规类型时,根据正则条件标识查询相应的表达式生成规则参数。
其中,表达式生成规则参数是生成与正则条件参数对应的正则表达式时所依据的规则的量化参数,用于指示服务器如何根据正则条件参数生成相应的正则表达式。
具体地,对于每个正则条件标识,服务器在数据库中预配置有相应的表达式生成规则参数。当根据正则表达式生成指令所确定的正则表达式类型为非常规类型时,服务器根据正则表达式生成指令所确定的正则条件标识有多个。服务器根据该多个正则条件标识中的每个正则条件标识,分别在数据库中查询相应的表达式生成规则参数。
在一个实施例中,对于非常规类型的目标正则表达式所对应的正则条件标识,服务器在数据库中对应于每个正则条件标识预配置有一个或多个表达式生成规则参数。可以理解的是,每个正则条件标识可对应有多个正则条件参数,每个正则条件参数可预配置有相应的表达式生成规则参数。
S208,基于表达式生成规则参数生成与相应的正则条件参数所对应的正则表达式。
具体地,当根据每个正则条件标识分别查询到相应的表达式生成规则参数时,对于每个正则条件标识所对应的正则条件参数,服务器基于相应的表达式生成规则参数生成与该正则条件参数对应的正则表达式。
在一个实施例中,步骤S208包括:当根据正则条件标识查询到多个候选表达式生成规则参数时,从多个候选表达式生成规则参数中筛选与正则条件参数相匹配的表达式生成规则参数;基于筛选出的表达式生成规则参数生成与正则条件参数对应的正则表达式。
具体地,服务器在数据库中预存储有正则条件标识、正则条件参数和表达式生成规则参数之间的关联关系。当根据每个正则条件标识分别查询到相应的多个候选表达式生成规则参数时,对于每个正则条件标识所对应的多个候选表达式生成规则参数,服务器根据该正则条件标识所对应的正则条件参数,从该多个候选表达式生成规则参数中筛选与该正则条件参数相匹配的表达式生成规则参数。对于每个正则条件标识所对应的正则条件参数,服务器基于筛选出的表达式生成规则参数,生成与该正则条件参数对应的正则表达式。
在本实施例中,对于每个正则条件标识可预配置有相应的多个正则条件参数,对于每个正则条件参数可预配置相应的表达式生成规则参数。由此,根据正则条件标识可查询到相应的各正则条件参数所对应的表达式生成规则参数,作为候选表达式生成规则参数,进而可从该多个候选表达式生成规则参数中,筛选出与正则表达式生成指令所对应的正则条件参数相匹配的表达式生成规则参数,作为生成与该正则条件参数对应的正则表达式的参考依据。
S210,按照预设拼接方式将对应于正则表达式生成指令生成的各正则表达式进行拼接,得到目标正则表达式。
其中,预设拼接方式是预先设定的用于对多个正则表达式进行拼接得到目标正则表达式的方式,比如按照预设先后顺序将多个正则表达式进行拼接的方式,具体可以首尾相连的方式进行拼接。预设先后顺序可根据实际情况自定义。
具体地,对于根据正则表达式生成指令所确定的各正则条件参数,当按照上述正则表达式生成方式分别生成相应的正则表达式时,服务器将各正则条件参数所对应的正则表达式,按照预设先后顺序以首尾相连的方式进行拼接,得到目标正则表达式。
可以理解的是,当正则表达式生成指令所对应的多个正则条件中包括匹配区域时,服务器可根据匹配区域所对应的正则条件参数,确定相应字符类型所对应的正则表达式在目标正则表达式中的相对位置。比如,字符类型为数字,且匹配区域为“前”,相应地,字符类型为字母、且匹配区域为“后”时,在拼接得到的目标正则表达式中,数字对应的正则表达式的排序位置在前,字母对应的正则表达式的排序位置在后。换而言之,匹配区域可用于表征字符类型所对应的正则表达式的相对位置。
举例说明,假设要生成前三位为数字,后面为任意字母的这一约束条件的目标正则表达式。其中,正则条件为字符类型、且相应的正则条件参数为数字时对应生成的正则表达式为[0-9],正则条件为匹配个数、且相应的正则条件参数为3时对应生成的正则表达式为{3},正则条件为字符类型、且相应的正则条件参数为字母时对应生成的正则表达式为[A-Za-z],正则条件为匹配个数、且相应的正则条件参数为“任意个数”时对应生成的正则表达式为“+”,数字对应的匹配区域为“前”,字母对应的匹配区域为“后”,由此,可确定数字对应的正则表达式与字母对应的正则表达式,在目标正则表达式中的相对位置。当正则条件为重复次数、且相应的正则条件参数为“1”时对应生成的正则表达式为“^”和“$”,在进行正则表达式的拼接时将“^”置于起始位置,“$”置于结束位置,由此得到的目标正则表达式为^[0-9]{3}[A-Za-z]+$。当正则条件为重复次数、且相应的正则条件参数为“多次”时对应生成的正则表达式为“\b”,在进行正则表达式的拼接时将“\b”分别置于起始位置和结束位置,由此得到的目标正则表达式为\b[0-9]{3}[A-Za-z]+\b。
上述正则表达式生成方法,根据终端发送的正则表达式生成指令确定待生成的正则表达式类型,以及用作约束条件的正则条件标识和相应的正则条件参数,并根据正则条件标识和正则条件参数,按照正则表达式类型对应的正则表达式生成方式生成相应的目标正则表达式。当正则表达式类型为非常规类型时,表明用作约束条件的正则条件标识多于一个,则分别基于各正则条件标识对应的表达式生成规则参数,生成与相应的正则条件参数所对应的正则表达式,并对各正则条件参数对应的正则表达式进行拼接,得到目标正则表达式。由此,当约束条件复杂时,基于上述非常规类型的正则表达式生成方式来生成目标正则表达式,且复杂的约束条件可通过多个正则条件标识和相应的正则条件参数来限定,提高了正则表达式的灵活性和适用范围。
在一个实施例中,步骤S204之后,上述正则表达式生成方法还包括:当正则表达式类型为常规类型时,查询与正则条件标识对应的表达式生成规则参数;基于表达式生成规则参数,根据正则条件参数生成相应的正则表达式,作为对应于正则表达式生成指令生成的目标正则表达式。
具体地,当根据正则表达式生成指令所确定的正则表达式类型为常规类型时,服务器根据该正则表达式生成指令唯一确定正则条件标识,并根据该正则条件标识在数据库中查询相应的表达式生成规则参数。服务器根据该正则条件标识对应的正则条件参数,基于所查询到的表达式生成规则参数生成与该正则条件参数对应的正则表达式,并将该正则表达式作为对应于正则表达式生成指令生成的目标正则表达式。
可以理解的是,当正则表达式类型为常规类型时,表明待生成的目标正则表达式与单个正则条件相对应,服务器解析所接收到的正则表达式生成指令得到单个正则条件标识和相应的正则条件参数,并生成与该单个正则条件参数对应的目标正则表达式。
举例说明,正则条件比如手机号、身份证号或邮件号等,终端的用户操作界面上展示有正则条件选项,当检测到用户针对特定的正则条件选项的预设触发操作时,终端根据该预设触发操作获取相应的正则条件标识(比如用于标识手机号的标识)和正则条件参数(比如用于表示手机号的参数),根据获取到的正则条件标识和正则条件参数生成相应的正则表达式生成指令,并发送至服务器。可以理解的是,当正则表达式类型为常规类型时,服务器解析正则表达式生成指令得到的单个正则条件标识和相应的正则条件参数。
上述实施例中,提供了用于生成常规类型的目标正则表达式的方式,以便于根据该种方式快速生成常规类型的目标正则表达式,保证了正则表达式的生成效率,且提高了正则表达式的灵活性和适用范围。
在一个实施例中,上述正则表达式生成方法还包括:接收终端发送的参数配置指令;根据参数配置指令获取待配置的目标正则条件标识、目标正则条件参数和目标表达式生成规则参数;将目标正则条件标识、目标正则条件参数和目标表达式生成规则参数关联存储。
其中,参数配置指令是用于触发参数配置操作的指令。具体地,终端在检测到用户的指定触发操作时,触发生成相应的参数配置指令并将该参数配置指令发送至服务器。服务器解析所接收到的参数配置指令,得到待配置的目标正则条件标识和该目标正则条件标识所对应的目标正则条件参数,以及该目标正则条件参数所对应的目标表达式生成规则参数。服务器建立该目标正则条件标识、目标正则条件参数和目标表达式生成规则参数之间的关联关系,并将目标正则条件标识、目标正则条件参数和目标表达式生成规则参数,按照所建立的关联关系对应配置到数据库中。
在一个实施例中,服务器解析参数配置指令,得到待配置的多个目标正则条件标识和各目标正则条件标识所对应的目标正则条件参数,以及各目标正则条件参数所对应的目标表达式生成规则参数。对于每个目标正则条件标识,服务器分别建立其与相应的一个或多个目标正则条件参数,以及该一个或多个目标正则条件参数所对应的目标表达式生成规则参数之间的关联关系。
在一个实施例中,对于常规类型的目标正则表达式所对应的目标正则条件标识,服务器可根据参数配置指令,在数据库中配置各目标正则条件标识和相应的目标表达式生成规则参数之间的关联关系。
上述实施例中,在数据库中预先配置正则条件标识、正则条件参数和表达式生成规则参数之间的关联关系,以便于在生成目标正则表达式时,能够根据正则条件标识快速定位表达式生成规则参数,进而快速生成目标正则表达式,提高了目标正则表达式的生成效率。
在一个实施例中,上述正则表达式生成方法还包括:接收终端发送的数据校验指令;根据数据校验指令获取待校验的数据和数据标识;根据数据标识查询预存储的目标正则表达式;基于查询的目标正则表达式对数据进行校验。
其中,数据校验指令是用于触发数据校验操作的指令。具体地,服务器接收终端发送的数据校验指令,解析所接收到的数据校验指令,得到待校验的数据和相应的数据标识。服务器根据该数据标识在数据库中查询预存储的目标正则表达式,解析该目标正则表达式得到相应的约束条件,并将解析数据校验指令得到的数据与该约束条件进行匹配,进而根据匹配结果确定该数据所对应的校验结果。当数据符合约束条件时,则判定该数据的校验结果为校验通过,否则,判定该数据的校验结果为校验未通过。当数据校验通过时,则根据该数据执行后续操作,比如进一步校验该数据的数据内容的正确性。当数据校验未通过时,服务器则向终端反馈表示数据校验失败的提示信息。
举例说明,终端检测到用户在特定系统的用户登录界面上的登录触发操作时,触发生成数据校验指令并发送至服务器。服务器根据该数据校验指令得到待校验的账号和密码,以及相应的数据标识,并按照上述方式校验该账号和密码是否符合该数据标识所对应的约束条件。
上述实施例中,提供了对数据进行初始校验的方式,即首先校验数据的格式是否符合预设的约束条件,并根据校验结果执行相应的操作。当校验通过时,按照业务逻辑根据校验通过的数据执行后续操作,当校验未通过时,则反馈提示信息,而不继续执行后续操作,有效避免了针对格式错误的数据执行不必要的后续操作而导致的数据处理压力过大的问题,提高了数据处理效率。
在一个实施例中,基于查询的目标正则表达式对数据进行校验,包括:从数据中提取与查询的目标正则表达式相匹配的目标数据;将目标数据发送至终端进行展示;当接收到终端对应反馈的表示确认目标数据无误的提示信息时,完成对应于数据校验指令的响应操作。
具体地,当解析所查询到的目标正则表达式得到相应的约束条件时,服务器将该约束条件与解析数据校验指令得到的数据进行匹配,以从该数据中提取出与该约束条件相匹配的目标数据,并将提取出的目标数据发送至终端。终端通过用户操作界面向用户展示所接收到的目标数据,并实时检测用户对于当前展示的目标数据所执行的确认操作。当检测用户的确认操作、且该确认操作表示目标数据确认无误时,终端触发生成表示确认目标数据无误的提示信息,并将该提示信息发送至服务器。当接收到表示确认目标数据无误的提示信息时,服务器根据目标数据执行后续操作,以完成对应于数据校验指令的响应操作。当接收到表示目标数据有误的提示信息时,服务器向终端反馈表示再次录入的提示信息。
上述实施例中,将基于目标正则表达式提取到的目标数据发送至终端进行确认,并针对确认无误的目标数据执行后续操作,提高了数据校验的准确性,从而进一步降低了数据处理压力,优化了终端操作体验。
可以理解的是,上述各个实施例中,向服务器发送正则表达式生成指令和参数配置指令的终端可以是开发人员终端,而向服务器发送数据校验指令的终端可以是用户终端。
如图3所示,在一个实施例中,提供了一种正则表达式生成方法,该方法具体包括以下步骤:
S302,接收终端发送的正则表达式生成指令。
S304,根据正则表达式生成指令获取正则表达式类型、正则条件标识和正则条件标识对应的正则条件参数。
S306,当正则表达式类型为非常规类型时,根据正则条件标识查询相应的表达式生成规则参数。
S308,当根据正则条件标识查询到多个候选表达式生成规则参数时,从多个候选表达式生成规则参数中筛选与正则条件参数相匹配的表达式生成规则参数。
S310,基于筛选出的表达式生成规则参数生成与正则条件参数对应的正则表达式。
S312,按照预设拼接方式将对应于正则表达式生成指令生成的各正则表达式进行拼接,得到目标正则表达式。
S314,当正则表达式类型为常规类型时,查询与正则条件标识对应的表达式生成规则参数。
S316,基于表达式生成规则参数,根据正则条件参数生成相应的正则表达式,作为对应于正则表达式生成指令生成的目标正则表达式。
上述实施例中,对于常规类型和非常规类型的目标正则表达式,分别提供了相应的正则表达式生成方式,即针对简单的约束条件和复杂的约束条件分别提供了相应的正则表达式生成方式,在保证目标正则表达式的生成效率的前提下,提高了目标正则表达式的灵活性和适用范围。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种正则表达式生成装置400,包括:接收模块402、获取模块404、查询模块406、生成模块408和拼接模块410,其中:
接收模块402,用于接收终端发送的正则表达式生成指令。
获取模块404,用于根据正则表达式生成指令获取正则表达式类型、正则条件标识和正则条件标识对应的正则条件参数。
查询模块406,用于当正则表达式类型为非常规类型时,根据正则条件标识查询相应的表达式生成规则参数。
生成模块408,用于基于表达式生成规则参数生成与相应的正则条件参数所对应的正则表达式。
拼接模块410,用于按照预设拼接方式将对应于正则表达式生成指令生成的各正则表达式进行拼接,得到目标正则表达式。
在一个实施例中,生成模块408,还用于当根据正则条件标识查询到多个候选表达式生成规则参数时,从多个候选表达式生成规则参数中筛选与正则条件参数相匹配的表达式生成规则参数;基于筛选出的表达式生成规则参数生成与正则条件参数对应的正则表达式。
在一个实施例中,查询模块406,还用于当正则表达式类型为常规类型时,查询与正则条件标识对应的表达式生成规则参数。生成模块408,还用于基于表达式生成规则参数,根据正则条件参数生成相应的正则表达式,作为对应于正则表达式生成指令生成的目标正则表达式。
在一个实施例中,如图5所示,上述正则表达式生成装置400,还包括:配置模块412;
配置模块412,用于接收终端发送的参数配置指令;根据参数配置指令获取待配置的目标正则条件标识和目标正则条件标识对应的目标正则条件参数,以及目标正则条件参数对应的目标表达式生成规则参数;将目标正则条件标识、目标正则条件参数和目标表达式生成规则参数关联存储。
在一个实施例中,上述正则表达式生成装置400,还包括:校验模块414;
校验模块414,用于接收终端发送的数据校验指令;根据数据校验指令获取待校验的数据和数据标识;根据数据标识查询预存储的目标正则表达式;基于查询的目标正则表达式对数据进行校验。
在一个实施例中,校验模块414,还用于从数据中提取与查询的目标正则表达式相匹配的目标数据;将目标数据发送至终端进行展示;当接收到终端对应反馈的表示确认目标数据无误的提示信息时,完成对应于数据校验指令的响应操作。
关于正则表达式生成装置的具体限定可以参见上文中对于正则表达式生成方法的限定,在此不再赘述。上述正则表达式生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储正则条件标识、正则条件参数、表达式生成规则参数和目标正则表达式。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种正则表达式生成方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述各个实施例中的正则表达式生成方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各个实施例中的正则表达式生成方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种正则表达式生成方法,所述方法包括:
接收终端发送的正则表达式生成指令;
根据所述正则表达式生成指令获取正则表达式类型、正则条件标识和所述正则条件标识对应的正则条件参数;
当所述正则表达式类型为非常规类型时,根据所述正则条件标识查询相应的表达式生成规则参数;
基于所述表达式生成规则参数生成与相应的所述正则条件参数所对应的正则表达式;
按照预设拼接方式将对应于所述正则表达式生成指令生成的各所述正则表达式进行拼接,得到目标正则表达式。
2.根据权利要求1所述的方法,其特征在于,所述基于所述表达式生成规则参数生成与相应的所述正则条件参数所对应的正则表达式,包括:
当根据所述正则条件标识查询到多个候选表达式生成规则参数时,从所述多个候选表达式生成规则参数中筛选与所述正则条件参数相匹配的表达式生成规则参数;
基于筛选出的所述表达式生成规则参数生成与所述正则条件参数对应的正则表达式。
3.根据权利要求1所述的方法,其特征在于,所述根据所述正则表达式生成指令获取正则表达式类型、正则条件标识和所述正则条件标识对应的正则条件参数之后,所述方法还包括:
当所述正则表达式类型为常规类型时,查询与所述正则条件标识对应的表达式生成规则参数;
基于所述表达式生成规则参数,根据所述正则条件参数生成相应的正则表达式,作为对应于所述正则表达式生成指令生成的目标正则表达式。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述终端发送的参数配置指令;
根据所述参数配置指令获取待配置的目标正则条件标识、目标正则条件参数和目标表达式生成规则参数;
将所述目标正则条件标识、所述目标正则条件参数和所述目标表达式生成规则参数关联存储。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
接收终端发送的数据校验指令;
根据所述数据校验指令获取待校验的数据和数据标识;
根据所述数据标识查询预存储的目标正则表达式;
基于查询的所述目标正则表达式对所述数据进行校验。
6.根据权利要求5所述的方法,其特征在于,所述基于查询的所述目标正则表达式对所述数据进行校验,包括:
从所述数据中提取与查询的所述目标正则表达式相匹配的目标数据;
将所述目标数据发送至所述终端进行展示;
当接收到所述终端对应反馈的表示确认目标数据无误的提示信息时,完成对应于所述数据校验指令的响应操作。
7.一种正则表达式生成装置,其特征在于,所述装置包括:
接收模块,用于接收终端发送的正则表达式生成指令;
获取模块,用于根据所述正则表达式生成指令获取正则表达式类型、正则条件标识和所述正则条件标识对应的正则条件参数;
查询模块,用于当所述正则表达式类型为非常规类型时,根据所述正则条件标识查询相应的表达式生成规则参数;
生成模块,用于基于所述表达式生成规则参数生成与相应的所述正则条件参数所对应的正则表达式;
拼接模块,用于按照预设拼接方式将对应于所述正则表达式生成指令生成的各所述正则表达式进行拼接,得到目标正则表达式。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
配置模块,用于接收所述终端发送的参数配置指令;根据所述参数配置指令获取待配置的目标正则条件标识和所述目标正则条件标识对应的目标正则条件参数,以及所述目标正则条件参数对应的目标表达式生成规则参数;将所述目标正则条件标识、所述目标正则条件参数和所述目标表达式生成规则参数关联存储。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811621646.6A CN109766483B (zh) | 2018-12-28 | 2018-12-28 | 正则表达式生成方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811621646.6A CN109766483B (zh) | 2018-12-28 | 2018-12-28 | 正则表达式生成方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109766483A true CN109766483A (zh) | 2019-05-17 |
CN109766483B CN109766483B (zh) | 2024-04-19 |
Family
ID=66451734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811621646.6A Active CN109766483B (zh) | 2018-12-28 | 2018-12-28 | 正则表达式生成方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109766483B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110191447A (zh) * | 2019-05-28 | 2019-08-30 | 深圳云里物里科技股份有限公司 | 一种esl中蓝牙广播包的过滤方法及相关装置 |
CN112087486A (zh) * | 2020-07-30 | 2020-12-15 | 山东浪潮通软信息科技有限公司 | 一种物联网设备的数据整合方法、设备及介质 |
CN112148724A (zh) * | 2020-10-16 | 2020-12-29 | 杭州兑吧网络科技有限公司 | 一种设备标识处理方法、系统、计算机设备及可读存储介质 |
CN112767933A (zh) * | 2020-12-22 | 2021-05-07 | 中国公路工程咨询集团有限公司 | 公路养护管理系统的语音交互方法、装置、设备及介质 |
CN112769813A (zh) * | 2020-12-31 | 2021-05-07 | 深圳市东晟数据有限公司 | 一种多前缀掩码五元组的匹配方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7779049B1 (en) * | 2004-12-20 | 2010-08-17 | Tw Vericept Corporation | Source level optimization of regular expressions |
CN105141444A (zh) * | 2015-07-24 | 2015-12-09 | 中国船舶重工集团公司第七0九研究所 | 基于正则匹配的网络管理命令生成方法及系统 |
CN105279157A (zh) * | 2014-05-29 | 2016-01-27 | 腾讯科技(深圳)有限公司 | 一种正则查询的方法和装置 |
CN106326363A (zh) * | 2016-08-11 | 2017-01-11 | 海信集团有限公司 | 一种基于正则表达式的匹配方法及装置 |
US20180321921A1 (en) * | 2017-05-02 | 2018-11-08 | Mastercard International Incorporated | Systems and methods for customizable regular expression generation |
-
2018
- 2018-12-28 CN CN201811621646.6A patent/CN109766483B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7779049B1 (en) * | 2004-12-20 | 2010-08-17 | Tw Vericept Corporation | Source level optimization of regular expressions |
CN105279157A (zh) * | 2014-05-29 | 2016-01-27 | 腾讯科技(深圳)有限公司 | 一种正则查询的方法和装置 |
CN105141444A (zh) * | 2015-07-24 | 2015-12-09 | 中国船舶重工集团公司第七0九研究所 | 基于正则匹配的网络管理命令生成方法及系统 |
CN106326363A (zh) * | 2016-08-11 | 2017-01-11 | 海信集团有限公司 | 一种基于正则表达式的匹配方法及装置 |
US20180321921A1 (en) * | 2017-05-02 | 2018-11-08 | Mastercard International Incorporated | Systems and methods for customizable regular expression generation |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110191447A (zh) * | 2019-05-28 | 2019-08-30 | 深圳云里物里科技股份有限公司 | 一种esl中蓝牙广播包的过滤方法及相关装置 |
CN112087486A (zh) * | 2020-07-30 | 2020-12-15 | 山东浪潮通软信息科技有限公司 | 一种物联网设备的数据整合方法、设备及介质 |
CN112087486B (zh) * | 2020-07-30 | 2022-07-12 | 山东浪潮通软信息科技有限公司 | 一种物联网设备的数据整合方法、设备及介质 |
CN112148724A (zh) * | 2020-10-16 | 2020-12-29 | 杭州兑吧网络科技有限公司 | 一种设备标识处理方法、系统、计算机设备及可读存储介质 |
CN112148724B (zh) * | 2020-10-16 | 2022-08-23 | 杭州兑吧网络科技有限公司 | 一种设备标识处理方法、系统、计算机设备及可读存储介质 |
CN112767933A (zh) * | 2020-12-22 | 2021-05-07 | 中国公路工程咨询集团有限公司 | 公路养护管理系统的语音交互方法、装置、设备及介质 |
CN112769813A (zh) * | 2020-12-31 | 2021-05-07 | 深圳市东晟数据有限公司 | 一种多前缀掩码五元组的匹配方法 |
CN112769813B (zh) * | 2020-12-31 | 2022-10-21 | 深圳市东晟数据有限公司 | 一种多前缀掩码五元组的匹配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109766483B (zh) | 2024-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109766483A (zh) | 正则表达式生成方法、装置、计算机设备和存储介质 | |
CN107766190B (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN109522218A (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN111177005A (zh) | 业务应用的测试方法、装置、服务器和存储介质 | |
CN107547299B (zh) | 一种测试方法及系统 | |
CN110399294A (zh) | 测试用例生成方法、装置、计算机设备和存储介质 | |
CN111258914A (zh) | 自动化用例测试的弹窗处理方法、装置、设备及存储介质 | |
CN109376993A (zh) | 流程验证方法、装置、计算机设备和存储介质 | |
CN108446175A (zh) | 任务处理方法、装置、计算机设备和存储介质 | |
CN112905459B (zh) | 服务接口测试方法、装置、电子设备及存储介质 | |
CN113377667B (zh) | 一种基于场景的测试方法、装置、计算机设备及存储介质 | |
CN109361628A (zh) | 报文组装方法、装置、计算机设备和存储介质 | |
CN110334303A (zh) | 表单校验方法、装置、计算机设备和存储介质 | |
CN111260433A (zh) | 业务订单处理方法及装置 | |
CN112241311A (zh) | 一种固件仿真模拟方法、装置、电子设备及可读存储介质 | |
CN112447167A (zh) | 语音识别模型验证方法、装置、计算机设备和存储介质 | |
CN114092951A (zh) | 结合rpa及ai的财务票据处理方法、装置、系统、设备及介质 | |
CN108062714B (zh) | 年金数据发送方法、装置、计算机设备及存储介质 | |
CN107357721B (zh) | 测试系统的方法及装置 | |
CN110888800A (zh) | 服务交互功能的测试方法、装置、存储介质及测试系统 | |
CN112395182A (zh) | 自动化测试方法、装置、设备及计算机可读存储介质 | |
CN109919573B (zh) | 数据处理方法、装置及计算机设备 | |
CN113704123B (zh) | 接口测试方法、装置、设备以及存储介质 | |
CN109783450A (zh) | 一种数据处理方法和装置、以及计算机设备 | |
CN110532186B (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 |