马来西亚身份证号码(MyKad)解析工具

粘贴身份证号码,获得每行对应的出生日期、年龄、性别与出生州组成的干净 CSV,并附上被退回行的逐行说明。

🔒 100% 浏览器内运行 · 零服务器上传

被移除的内容

马来西亚规则与特殊情况

结构:YYMMDD-PB-###G。马来西亚身份证号码一共 12 位数字:头 6 位是出生日期(YYMMDD),接着 2 位是出生州代码(PB),最后 4 位是流水号,流水号最后一位(G)决定性别。

段位含义规则
YYMMDD出生日期年份规则:YY 不大于今年就当作 20YY,否则当作 19YY——2026 年时 30 是 1930、26 是 2026(推算惯例,并非国民登记局 JPN 官方规则)
PB出生州代码01–16 对照下表;JPN 另用 17–59 与 82 作为州代码,但没有公开的一对一对照表,这些会显示「未知」;60–99 是国家代码(在国外出生)
###G流水号最后一位 G:奇数 = 男,偶数 = 女
PB出生州
01柔佛
02吉打
03吉兰丹
04马六甲
05森美兰
06彭亨
07槟城
08霹雳
09玻璃市
10雪兰莪
11登嘉楼
12沙巴
13砂拉越
14吉隆坡联邦直辖区
15纳闽联邦直辖区
16布城联邦直辖区
17–59、82未知——本工具无法对应到单一州属的 JPN 代码
60–99国外出生(国家代码;60 汶莱、61 印尼、62 新加坡,依次类推)

日期必须是真实日历日期:月份 13、2 月 30 日这类号码会被退回并在下方说明。年龄是截至今天的实足岁数。输入可以带连字符(如 850615-07-4567)或空格,也可以直接输入 12 位数字(如 850615074567);同一行里的其他姓名或备注文字会自动忽略。重复号码只保留第一次出现,之后出现的重复项会被移除并报告。

处理前后

处理前

Ali: 900101-10-1234
Siti 850615074567
Mei Ling — 880202-08-1356
Ali lagi: 900101-10-1234
Rosnah (IC rosak) 901301-07-9999

处理后

ic,birthdate_iso,age,gender,state_code,state,status
900101-10-1234,1990-01-01,36,女,10,雪兰莪,有效
850615-07-4567,1985-06-15,41,男,07,槟城,有效
880202-08-1356,1988-02-02,38,女,08,霹雳,有效

使用方法

  1. 把身份证号码粘贴到“输入”框 — 连字符可省略,同行多余文字也可以保留,或按“载入示例资料”查看马来西亚示例。
  2. 按“开始处理”,每个有效的号码都会变成一行 CSV,包含出生日期、年龄、性别和出生州。
  3. 复制 CSV,或查看下方说明,了解哪些行被退回及其原因——全程不会上传任何资料。

常见问题

我的身份证号码会被上传到服务器吗?

不会。整个工具是静态 JavaScript,在你的浏览器内运行。你可以在浏览器的“网络”(Network)面板确认按“开始处理”不会发出任何请求;身份证号码是高度敏感的个人资料,这样处理很重要。

两位年份怎么决定是 1900 还是 2000 年代?

YY 不大于今年就当作 20YY,否则当作 19YY:2026 年时 YY 30 代表 1930。号码本身不说明属于哪个世纪,接近分界点的个案最好单独再核对。

性别是怎么从号码里解出来的?

看四位流水号的最后一位:奇数是男,偶数是女。这是通用的 MyKad 规则,但仅用于解读号码格式,不代表已核实本人身份。

17–59 或 82 的州代码是什么意思?

01–16 对应 13 个州和 3 个联邦直辖区。JPN 另外使用 17–59 与 82 作为延伸州代码,但没有公开的一对一对照表,所以本工具标示为“未知”,不随意猜测。60–99 是国家代码,代表在国外出生,会标示为“国外出生”。

这个工具能核实身份证号码是不是真的?

不能。本工具只解格式——真实日历日期、合理的州代码和性别位。它无法确认号码是否真的由 JPN 签发,也无法确认正在出示的人就是本人。