身份证正则表达式(15位)   :

isIDCard1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;

身份证正则表达式(18位)  :

isIDCard2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;

接下来以18位身份证正则表达式为例,为大家讲解:

^[1-9]:^表示起始位置,起始位置为1-9的数字(第1位)

\d{5}:5位整数(2-6位)

[1-9]:1-9的数字(7位)

\d{3}:3位整数(8-10位)

((0\d)|(1[0-2])):月份判断,(0\d)表示01-09,(1[0-2])表示10-12。正好12个月(11-12位)

(([0|1|2]\d)|3[0-1]):日份判断,([0|1|2]\d)表示01-29,3[0-1]表示30-31(13-14位)

\d{4}$:最后四位以整数结尾,\d{4}表示四位整数,$表示结尾(15-18位)