js正则对身份证号的判断
在JavaScript中,可以使用正则表达式来验证身份证号码是否有效。中国的身份证号码由18位数字组成,前17位为数字,最后一位为数字或字母X(大写),并且包含一定的校验逻辑。以下是一个简单的正则表达式用来验证身份证号码的有效性:
function isValidID(id) {
const pattern = /^[1-9]\d{5}(18|19|20|21|22)?\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}(\d|[Xx])$/;
return pattern.test(id);
}
// 测试
console.log(isValidID('123456789012345678')); // false
console.log(isValidID('12345678901234567X')); // true
console.log(isValidID('123456789012345678X')); // true
这个函数isValidID
接收一个身份证号码作为参数,并返回一个布尔值,表示该号码是否有效。正则表达式中包含了对于格式的校验,但不包含对于校验码的校验,因为校验码需要计算才能验证。如果需要包含校验码的校验,这个正则表达式将会更复杂。
评论已关闭