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