首頁  >  文章  >  web前端  >  15/18位身分證號碼驗證的正規表示式總結_正規表示式

15/18位身分證號碼驗證的正規表示式總結_正規表示式

微波
微波原創
2017-06-28 13:43:352928瀏覽

需要一個簡單的驗證身分證號碼的正規表達式,從網路上查了很多,都有問題,所以乾脆自己寫一個,下面這篇文章主要給大家分享了關於15/18位元身分證號碼驗證的正規表示式,文中介紹的非常詳細,需要的朋友可以參考下。

前言

開發過程中,常常需要對一些輸入資訊進行有效性驗證,使用正規表示式進行校驗是最簡單、效率最高的方式了,以下就來看看15/18位身分證號碼驗證的正規表示式吧。

介紹

xxxxxx yyyy MM dd 375 0     十八位

xxxxxx    yy  dd   75 0 xxxxxx    yy 

##地區:

[1-9]\d{5}

#年的前兩位:

(18|19|([23] \d))            1800-2399

年的後兩位:

\d{2}

月份:

((0[1-9])|(10|11|12))

#天數:

(([0-2][1-9])|10 |20|30|31)          閏年無法禁止29+

三位順序碼:

\d{3}

#兩位順序碼:

\d{2}

校驗碼:

[0-9Xx]

正規表示式

十八位:

^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9 ])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$

#十五位:

^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2 ][1-9])|10|20|30|31)\d{2}$

#總:

#( ^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12 ))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\ d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}$ )

#########簡單的###JS###驗證範例##########
function isCardNo(card) 
{ 
// 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X 
var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; 
if(reg.test(card) === false) 
{ 
alert("身份证输入不合法"); 
return false; 
} 
}
#########總結### ######

以上是15/18位身分證號碼驗證的正規表示式總結_正規表示式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn