美国身份证的js正则表达式
2024-06-19
77
以下是美国身份证的正则表达式:
^(?!000|666|900)\d{9}$
该正则表达式可以匹配以下格式的美国身份证号码:
123456789
012345678
555555555
以下是使用 JavaScript 验证美国身份证号码有效性的示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>验证美国身份证号码</title>
</head>
<body>
<script>
function is_valid_us_id(id_number) {
// 正则表达式
const pattern = /^(?!000|666|900)\d{9}$/;
// 验证
if (!pattern.test(id_number)) {
return false;
}
// 计算校验码
let checksum = 0;
for (let i = 0; i < 8; i++) {
checksum += (i + 1) * parseInt(id_number[i]);
}
checksum %= 11;
if (checksum === 0) {
return true;
} else if (checksum === 10) {
return id_number[8] === "X";
} else {
return id_number[8] === String(11 - checksum);
}
}
// 示例
const id_number = "123456789";
if (is_valid_us_id(id_number)) {
console.log("身份证号码有效");
} else {
console.log("身份证号码无效");
}
</script>
</body>
</html>
该示例首先定义了一个名为 is_valid_us_id 的函数,该函数接受一个参数 id_number,表示美国身份证号码。然后,使用正则表达式 ^(?!000|666|900)\d{9}$ 验证 id_number 的格式是否有效。如果格式有效,则计算校验码并与 id_number 中的校验码进行比较。如果校验码一致,则返回 true,表示身份证号码有效;否则返回 false,表示身份证号码无效。
最后,示例中提供了一个示例,用于验证身份证号码 123456789 的有效性。
更新于:5个月前赞一波!2
相关文章
- js使用IntersectionObserver实现锚点在当前页面视口时导读高亮
- js使用scroll事件实现锚点滚动到页面顶部时导航高亮
- 前端js拖拽插件库有哪些?
- Swapy - 开源JavaScript js拖拽插件
- 【说站】一分钟带你快速了解js面向对象是什么?
- JS 的 apply 方法
- JS 字符串和数组相互转换
- JS 数组去重的多种方法
- JS 函数中的 arguments 类数组对象
- 介绍Js简单的递归排列组合
- Node.js 软件包管理工具 (npm)
- JS 性能优化之防抖
- JS 性能优化之节流
- 常用的正则表达式(Regular Expression)大全
- 正则表达式语法速查
- 如何在 JavaScript 中使用正则表达式删除 HTML 标签?
- JS 数组方法 every 和 some 的区别
- JS 正则表达式常用方法
- JS 数组详解【编程笔记】
- JS 中的 ?. 和 ??
文章评论
评论问答