身份证号码验证正则表达式

需要一个简单的验证身份证号的正则表达式,从网上查了很多,都有问题,主要是只要超过15位,都能够通过,于是自己查了半天手册,写了下面这个式子,能够满足简单的要求:
1、15位或18位,如果是15位,必需全是数字。
2、如果是18位,最后一位可以是数字或字母Xx,其余必需是数字。

/^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$/

从这个表达式想到的:
1、正则表达式首先是要通过正确的
2、限制不正确
3、可以不限制其中的某此规则,但一定要让正确的先通过。

posted @ 2007-12-01 14:38  inhesoft  阅读(85490)  评论(17编辑  收藏  举报