如何使用正则

开发工具与关键技术:VS+MVC
作者:茅凯翔
撰写时间:2019年7月12日

正则表达式想必大家都知道吧,正则表达式(规则表达式),英文称为RE(Regular Expression)。正则表达式通常被用来检索、替换那些字符某个模式(规则)的文本。往细里面说就是在编写处理字符串的程序或者网页时,经常会有查找符合某些复杂规则的字符串的需要,就是用正则表达式来描述这些规则的工具。好像还是看不懂!后面用例子解释。
正好我在做的几个功能都需要用到正则表达式,我需要用正则表达式来验证身份证、银行卡号、手机号码、邮箱什么的。不止可以验证这些,还有很多,主要是我现在用不到,我就讲我用到的。首先验证身份证,身份证有两种方法,第一种是简单验证它的数量是不是15位或者18位,或者是17位后面有大小写X。声明变量来接收:var papersNumber = /(\d{15}$)|(^\d{18}$)|(\d{17}(\d|X|x) ) / ; , 开 头 跟 结 尾 都 要 用 “ / ” , 要 不 然 中 间 的 全 都 用 不 了 。 然 后 括 号 里 面 先 放 “ ” , “ ” 匹 配 字 符 串 的 开 始 , “ )/;,开头跟结尾都要用“/”,要不然中间的全都用不了。然后括号里面先放“^”,“^”匹配字符串的开始,“ )/;/”匹配字符串的结束,所以“$”都是用于结束。“\d”只匹配数字,“{15}”15位数,中间的“|”就是或者,因为后面还有需要匹配的。第二个就是只匹配18位数的数字。第三个就是只匹配17位数加上大小写的X的数字。第二种是已经封装好了的方法,第二种很严谨,每一个数字都要匹配,匹配前面的两位数有没有对应省的数字,还有再用正则表达式来匹配闰年和平年的出生日期的合法性,再匹配你给的出生日期是否正确。下面就是引用封装的方法:获取到身份证的ID,声明变量来接收已被正则表达式验证的身份证ID,然后判断获取到的身份证是否正确,不正确便弹出提示框。
在这里插入图片描述
然后我再来说说使用正则表达式的银行卡号、手机号码、邮箱,为什么要一起说呢,因为它们都是差不多一样的,跟身份证第一种方法是同样的方法。都是声明变量来接收正则表达式的方法。第一种是手机号码的正则表达式,开始符与结束符就不多说了,这里的只匹配手机号码前面三位数,中国的手机号码都是以13什么、14什么、18什么开头的,所以前面两位是固定的,匹配13和1到9的任意一位数;或者匹配14和5或者7;再或者匹配到15和0到9任意一位数,除了4;再或者匹配到18和0到9的任意一位数,也是除了4,最后再匹配任意的八位数只是数字就可以了。第二种是邮箱的正则表达式,开始符与结束符不说了,只匹配从6到10的数字,([1-9]和{6,10}他俩是一样的意思,方括号里面是要“-”,花括号里面是要“,”),因为QQ邮箱后面的都是固定的,所以直接把@qq.com放了上去,qq前面那个“.”就是匹配除换行符以外的任意字符。第三种是银行卡号的正则表达式,这个是最简单也最直接的匹配方式,因为匹配银行卡号的正则表达式我不会,只能匹配只是19位数字的,以后会银行卡号的正则表达式我再换上去。
在这里插入图片描述
正则表达式写完,就在下面开始写判断,判断要写在执行操作的后面,我就拿判断手机号码来说,声明变量要写在执行操作的前面,前面的是正则表达式声明的名字,后面的是上面声明手机号码的ID的名字,然后用layer插件的提示框,最后为返回值。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值