一种简单且语义化的输入校验方法技术

技术编号:21033450 阅读:16 留言:0更新日期:2019-05-04 05:09
本发明专利技术涉及一种简单且语义化的输入校验方法,本发明专利技术改变使用正则表达式进行匹配的方式,用于输入校验的简单且语义化的属性方法,降低了技术的复杂度,开发者能准确自测。降低了bug发生几率,提高开发效率,开发者第一时间想出匹配度高的属性。

【技术实现步骤摘要】
一种简单且语义化的输入校验方法
本专利技术涉及一种输入校验方法,更具体地说,涉及一种简单且语义化的输入校验方法。
技术介绍
现在大部分应用在最初使用时都需要用户进行注册,其中包括个人信息或者企业信息等,从简单的注册信息到需要大量信息的复杂注册信息,有些信息在注册时需要限定输入内容,对用户所输入的信息做校验,包括格式校验、特殊字符校验以及长度校验等多种限制,只有当所有输入信息通过校验后才能成功提交表单完成注册或者登录,因此,输入校验在注册或者登录时至关重要,开发者需要对输入内容进行校验,保证提交信息时所有信息都是符合规则的。现有技术方案之一是使用正则表达式(regex)来校验输入的内容是否符合规定,regex由一些普通字符和一些元字符组成,普通字符包括大小写字母和数字,元字符是具有特殊意义的字符,比如:以某种特定字符开始(^),以某种特定字符结束($),匹配个数({})等等。按照需求写出regex,把需要验证的内容与表达式进行匹配。在开发过程中,由于regex有多种字符,字符数量大并且较复杂,所以不易记忆,并且针对于相同的需求可能有多种表达式匹配,前端开发中需要多次测试表达式正确性,有时可能会遗漏某种情形,致使在开发过程时自测没有问题,但是经过测试人员测试出现bug,针对于一些较复杂的规则,不能第一时间写出regex,有时还需要百度相关字符进行匹配,降低了开发效率。现有技术二是使用androidEditview控制打开键盘的形式来控制输入的内容,android:maxLength=‘4’表示最多可以输入4个字符,android:phoneNumber="true"表示开启软键盘,只能输入电话号码,android:numeric="integer/signed/decimal"表示输入的数字类型分别为正整数、带符号正数、浮点数,android:inputType="date"可以控制输入文本类型。现有技术二的缺点为:首先,此技术只适用于android应用开发,对其他环境开发不适用,有很大的局限性;其次,此技术只能限制输入字符的类型,通过控制软键盘的类型来控制输入内容的类型,并不能进行详细的校验,对于复杂规则无法校验。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术中的缺陷,提供一种简单且语义化的输入校验方法,解决现有需要记忆大量字符的问题,解决无语义化的正则表达式的问题,提高开发者自测准确度,减少自测时间,提高效率,适用于多种开发环境,提高可用度。本专利技术解决其技术问题所采用的技术方案是:构造一种简单且语义化的输入校验方法,改变使用正则表达式进行匹配的方式,用于输入校验的简单且语义化的属性方法,降低了技术的复杂度,开发者能准确自测。在本专利技术所述的简单且语义化的输入校验方法中,所述简单且语义化的输入校验方法步骤为:S1.改变使用正则表达式进行匹配的方式,改为在input标签里面直接增加需要的相应属性;S2.以某种字符开始:start=’字符’,以某种字符结束:end=’字符’;S3.是否包含小写字母:lowerCase=’true/false’,是否包含大写字母:upperCase=’true/false’,是否包含数字:number=’true/false’,是否包含特殊字符:special=’true/false’,即判断是否包含都使用布尔值,默认为false;S4.长度限制直接使用min=’数字’,max=’数字’的形式;S5.如有特殊需求,指定不能包含某种字符,直接用else=’字符’的形式排除即可;S6.格式上如果必须按照某种顺序输入,则以‘+’连接,如:lowerCase+num表示小写字母在前,数字在后的顺序;S7.针对特殊格式,直接添加mobile,telephone,mail,src属性;所述特殊格式包括手机号、座机号、邮箱、网址;S8.限制字母或者数字的匹配数量使用{min,max}的形式,所述形式默认开启允许输入小写字母;S9.限制某种特殊字符的数量,使用类名称=’特殊字符{min,max}’形式;S10.匹配八进制和十六进制使用octal=’true’和hexadecimal=’true’,默认false。实施本专利技术的一种简单且语义化的输入校验方法,具有以下有益效果:本专利技术降低了技术的复杂度,开发者能准确自测。降低了bug发生几率,提高开发效率,开发者第一时间想出匹配度高的属性。本专利技术适用范围较之其他方案更广。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1是本专利技术的简单且语义化的输入校验方法流程图具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,所述简单且语义化的输入校验方法步骤为:S1.改变使用正则表达式进行匹配的方式,改为在input标签里面直接增加需要的相应属性。S2.以某种字符开始:start=’字符’,以某种字符结束:end=’字符’。S3.是否包含小写字母:lowerCase=’true/false’,是否包含大写字母:upperCase=’true/false’,是否包含数字:number=’true/false’,是否包含特殊字符:special=’true/false’,即判断是否包含都使用布尔值,默认为false。S4.长度限制直接使用min=’数字’,max=’数字’的形式。S5.如有特殊需求,指定不能包含某种字符,直接用else=’字符’的形式排除即可。S6.格式上如果必须按照某种顺序输入,则以‘+’连接,如:lowerCase+num表示小写字母在前,数字在后的顺序。S7.针对特殊格式,直接添加mobile,telephone,mail,src属性;所述特殊格式包括手机号、座机号、邮箱、网址。S8.限制字母或者数字的匹配数量使用{min,max}的形式,如:lowerCase=’{2,5}’表示可输入2-5位的小写字母,此形式默认开启允许输入小写字母。S9.限制某种特殊字符的数量,使用类名称=’特殊字符{min,max}’形式,如:lowerCase=‘a{3}’表示匹配输入内容中只能包含3个a。S10.匹配八进制和十六进制使用octal=’true’和hexadecimal=’true’,默认false。进一步地,所述简单且语义化的输入校验方法。尽管通过以上实施例对本专利技术进行了揭示,但本专利技术的保护范围并不局限于此,在不偏离本专利技术构思的条件下,对以上各构件所做的变形、替换等均将落入本专利技术的权利要求范围内。本文档来自技高网
...

【技术保护点】
1.一种简单且语义化的输入校验方法,其特征在于,所述简单且语义化的输入校验方法步骤为:S1.改变使用正则表达式进行匹配的方式,改为在input标签里面直接增加需要的相应属性;S2.以某种字符开始:start=’字符’,以某种字符结束:end=’字符’;S3.是否包含小写字母:lowerCase=’true/false’,是否包含大写字母:upperCase=’true/false’,是否包含数字:number=’true/false’,是否包含特殊字符:special=’true/false’,即判断是否包含都使用布尔值,默认为false;S4.长度限制直接使用min=’数字’,max=’数字’的形式;S5.如有特殊需求,指定不能包含某种字符,直接用else=’字符’的形式排除即可;S6.格式上如果必须按照某种顺序输入,则以‘+’连接,如:lowerCase+num表示小写字母在前,数字在后的顺序;S7.针对特殊格式,直接添加mobile,telephone,mail,src属性;所述特殊格式包括手机号、座机号、邮箱、网址;S8.限制字母或者数字的匹配数量使用{min,max}的形式,所述形式默认开启允许输入小写字母;S9.限制某种特殊字符的数量,使用类名称=’特殊字符{min,max}’形式;S10.匹配八进制和十六进制使用octal=’true’和hexadecimal=’true’,默认false。...

【技术特征摘要】
1.一种简单且语义化的输入校验方法,其特征在于,所述简单且语义化的输入校验方法步骤为:S1.改变使用正则表达式进行匹配的方式,改为在input标签里面直接增加需要的相应属性;S2.以某种字符开始:start=’字符’,以某种字符结束:end=’字符’;S3.是否包含小写字母:lowerCase=’true/false’,是否包含大写字母:upperCase=’true/false’,是否包含数字:number=’true/false’,是否包含特殊字符:special=’true/false’,即判断是否包含都使用布尔值,默认为false;S4.长度限制直接使用min=’数字’,max=’数字’的形式;S5.如有特殊需求,指定不能包含某种字符,直接用else=’字符’的形式排除即可;S6.格式上如果必须按照某种顺序输入,则...

【专利技术属性】
技术研发人员:王迪高原
申请(专利权)人:深圳竹云科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1