判断身份证号是否正确使用的是正则,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("格式不正确")
}

  正则常用的特殊表达式

  Java怎样判断身份证号-LMLPHP

05-11 16:55