表示年月的正则表达式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了表示年月的正则表达式相关的知识,希望对你有一定的参考价值。
我们知道月份通常是两个数字从01-12;所以月份可以采用|这个运算符来解决。当第一个数字式0的时候,第二个数字就可以从1-9,当第一个数字式1的时候,第二个数字就只能从0-2。于是月份的正则表达式可以设计为:varremonth=/0[1-9]|1[0-2]/;对于年份的正则表达式,我们同样也可以用|这个运算符来解决,考虑从1900-2099这个范围的日期(当然你可以根据需要,任意设定,原理一样),则可以设计年份正则表达式如下:var
reyear=/19|20\d2/;于是年月正则表达式就可以设计如下:var
yearmonth=/(?:19|20\d2)-(?:0[1-9]|1[0-2)/;(其中?:是一个非捕获性标志) 参考技术A 这个正则表达式关键是后面的月份,月份只能是01-12,可以分解一下00-09或者10-12
这个给出年份在1000-2999的的正则表达式供你参考
[12]\d3(0[1-9]|1[0-2])
[12]\d3
--
年份
(0[1-9]|1[0-2])
--
月份 参考技术B ^20[0-9]2[01][0-9]$
[0-9]2表示00-99之间
[01]表示接下来这个数只能是0或1,因为不存在22月32月之类的
[0-9]这个表示这个数在0-9之间的任意一个这个正则唯一的漏洞就是匹配00-19之间,但是没有00这个月,也没有13,19等月
身份证号码的正则表达式
①前1、2位数字表示:所在省份的代码;②第3、4位数字表示:所在城市的代码;
③第5、6位数字表示:所在区县的代码;
④第7~14位数字表示:出生年、月、日;
⑤第15、16位数字表示:所在地的派出所的代码;
⑥第17位数字表示性别:奇数表示男性,偶数表示女性;
⑦第18位数字是校检码:也有的说是个人信息码,一般是随计算机随机产生,用来检验身份证的正确性。校检码可以是0~9的数字,有时也用x表示。 参考技术A ID Card(身份证的缩写)
以上是关于表示年月的正则表达式的主要内容,如果未能解决你的问题,请参考以下文章