身份證驗證JS

2021-06-18 02:22:40 字數 1631 閱讀 3007

function checkidcardstrict(idcard)

var idcard =idcard.touppercase();

var y,jym;

var s,m;

var idcard_array = new array();

// $(element).val(idcard);

idcard_array = idcard.split("");

//身份號碼位數及格式檢驗

switch(idcard.length)[0-9]((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]$/;//測試出生日期的合法性

} else [0-9]((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]$/;//測試出生日期的合法性

}if(ereg.test(idcard)) return true;

else return false;

//地區檢驗

if(area[parseint(idcard.substr(0,2),10)]==null) return false;

break;

case 18:

//18位身份號碼檢測

//出生日期的合法性檢查

//閏年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))

//平年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))

if ( parseint(idcard.substr(6,4),10) % 4 == 0 || (parseint(idcard.substr(6,4),10) % 100 == 0 && parseint(idcard.substr(6,4),10)%4 == 0 ))[0-9]((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9][0-9xx]$/;//閏年出生日期的合法性正規表示式

} else [0-9]((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9][0-9xx]$/;//平年出生日期的合法性正規表示式

}if(ereg.test(idcard))else return false;

}else return false;

break;

default:

return false;

break;}}

js 身份證驗證

function checkidcard idcard var idcard,y,jym var s,m var idcard array new array idcard array idcard.split 地區檢驗 if area parseint idcard.substr 0,2 null...

身份證驗證

1 簡單的正規表示式 1 preg match d d dx id card 2 preg match d 18 19 20 d 01 d 0123 d d d x id card 3 preg match d d d x x id card 2 複雜並且嚴格一些的驗證 這個可以驗證15位和18位的...

身份證驗證

身份證分為兩類 1 全是數字 15位或者18位。2 大寫x 18位,最後一位字母x,其餘必需是數字。正則 d d d d x 身份驗證例項 header content type text html charset utf 8 idc post idc bm substr idc,0,6 gende...