Java怎样判断身份证号
判断身份证号是否正确使用的是正则,Java与js中使用正则的方式大差不差,下面是Java通过正则判断身份证号是否正确的
* */ @Test public void cardId() { System.out.println("身份证号:"); String s = "61011319780908211x"; String regex = "\\d{15}|\\d{17}[\\dxX]"; // if(s.matches(regex)) { System.out.println("格式正确"); }else { System.out.println("格式错误"); } }
js中通过正则判断身份证号的写法如下:
var cardId=/^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|31)|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}([0-9]|x|X)$/; var aa = "41110920090908900x"; if(cardId.test(aa)){ console.log("正确") }else{ console.log("格式不正确") }
正则常用的特殊表达式