ToolAct工具行動

身分證年齡計算器

批次解析身分證號碼,計算年齡並統計分佈

輸入身分證號碼

什麼是身分證號碼年齡計算器?

身分證年齡計算器用來從中國居民身分證號碼中讀出生日期,並據此計算目前年齡。它適合核對報名表、會員資料、年齡門檻、考試資料或統計表時使用,避免人工拆出生年月日再計算周歲。工具只解析號碼中已經包含的日期資訊,不等同於官方身分驗證,也不建議在沒有必要時儲存完整身分證號。涉及隱私、未成年人保護或法律效力的情境,仍應以證件正本與機構正式驗證流程為準。

如何使用

如何使用

  1. 在輸入框中輸入身份證號碼,每行一筆
  2. 點選「計算」按鈕開始解析
  3. 查看每張身份證的詳細資訊(出生日期、年齡、性別、地區)
  4. 查看統計結果(平均年齡、年齡分佈等)
  5. 可複製結果或匯出為 CSV 檔案

隱私與驗證提示

  • 身份證號碼屬敏感的個人資料。請僅處理你獲授權的資料,並避免隨意分享匯出結果。
  • 校驗碼驗證可抓出不少打錯字的情況,但無法證實該身份證號碼確實屬於某位真實人物。
  • 批次結果中,請先檢查無效的資料列,再將年齡分佈或性別統計用於報告。

使用場景

從中國身分證號碼提取年齡和基本資訊貼上一筆或多筆 15 位或 18 位中國居民身分證號碼,即可驗證校驗碼、地區碼、出生日期、年齡和性別。18 位校驗碼遵循 ISO 7064:1983 MOD 11-2 標準,權重為 7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2,映射表為「10X98765432」,15 位舊式號碼會在內部提升為 18 位格式(以 19 為世紀前綴)後再進行校驗。了解這些原理有助於理解為何號碼本體中單一位數的翻轉總會導致校驗碼行失效。
批次分析年齡和地區分佈在清理報名或調查資料時,使用統計摘要查看總數、有效數、無效數、平均年齡、最小值、最大值、中位數、性別計數、年齡區間和省份分佈。省份前綴為前六位數字(行政區劃代碼 GB/T 2260),因此以 110108 和 110105 開頭的號碼都是北京但屬不同區。將地區彙總視為規劃快照,發布前請以權威人口統計表確認最終版本。
將身分證解析與身分驗證分開看待此工具檢查格式和校驗碼邏輯,但不確認該人是否擁有該身分證、證件是否有效,或提取的資料是否具法律效力。一筆有效的 18 位字串仍可能描述已撤銷、已故或虛構的身分,性別位元由發證窗口的奇偶規則決定,而非當前的自我認同。請將輸出視為已解析的參考資料,而非身分驗證。
在貼上的列表中發現無效或格式錯誤的條目貼上一組身分證號碼並查看無效行,以在檔案交給人資、報名或財務部門之前抓出打字錯誤、缺少校驗碼、地區碼顛倒或 15 位舊式條目。最常見的失敗情況包括:數字互換但仍通過日期檢查、20xx 年行政合併後已廢止的地區碼,以及複製貼上的全形字元未通過數字過濾。在此階段攔截比事後核對更省成本。
對照年齡區間表檢查資格門檻使用年齡區間摘要快速查看有多少條目落在考試資格、會員等級、折扣門檻、長者年齡規則或保險年齡區間內,無需在提取的出生日期上自行編寫範圍分桶程式碼。年齡是對照當前日期計算的,因此生日在後半年的人會比下個月少一歲,這在門檻恰好落在臨界點時很重要。若區間在邊界處有影響,請在資格日期當天重新執行批次。

技術原理

GB 11643-1999 定義的 18 位中國居民身分證號碼將五個欄位打包為固定寬度字串:第 1-6 位是來自 GB/T 2260 的行政區劃代碼,第 7-14 位是 YYYYMMDD 格式的出生日期,第 15-17 位是發證序號,第 18 位是 ISO 7064 MOD 11-2 校驗字元。1999 年前的 15 位格式省略了世紀前綴和校驗碼,因此升級意味著在 YY 區塊前插入 '19',然後計算尾部校驗和。 校驗和是驗證的核心。前 17 位數字分別乘以權重序列 7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2,加權總和取模 11,餘數透過映射表 '1-0-X-9-8-7-6-5-4-3-2' 對應校驗碼。餘數為 2 時產生字面字元 'X' 而非數字,這就是最後一位必須不分大小寫解析的原因。性別僅從第 17 位的奇偶性解碼(奇數為男性,偶數為女性),年齡則為日曆年份之差減去一(若今天的日期早於編碼的生日)。 演算法無法證明的是是否有真實的人擁有該號碼。單一數字互換若仍保持校驗碼有效則仍會通過,行政合併後退役的地區代碼在 GB/T 2260 中可能已無法解析,奇偶性別反映的是發證窗口而非當前的自我認同。將解析結果視為廉價的結構驗證,真正的身分核實應交由發證機關處理。

  • 校驗碼:ISO 7064:1983 MOD 11-2,對前 17 位數字計算,權重為 7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2,餘數映射表為 '10X98765432'。
  • 日期欄位:第 7-14 位使用 YYYYMMDD;即使校驗碼碰巧計算通過,也應拒絕不可能的日曆日期如 19900230。
  • 地區代碼:第 1-6 位遵循 GB/T 2260;行政合併後退役的區域代碼仍會通過校驗碼檢查,但無法解析為實際的區域名稱。
  • 舊式 15 位升級:在第 6 位和第 7 位之間插入 '19',然後重新計算 MOD 11-2 校驗碼;這就是為什麼單獨的 15 位號碼沒有校驗碼可供驗證。
  • 性別位元:第 17 位的奇偶性,奇數為男性,偶數為女性,由發證窗口的序號分配決定,而非自我認同。
  • 年齡邊界:當(今天的月份、日期)早於(出生月份、日期)時減去一年,因此生日在後半年的人會比下一個生日時的年齡少一歲。

範例

解析單一中國身分證號

輸入:  11010119900101****
Region: 110101 → 北京市東城區
Birth:  1990-01-01
Gender: 第 17 碼為奇數 → 男 / 偶數 → 女
Age on 2026-06-10: 36 歲
Zodiac: 馬, Constellation: 摩羯座

批次處理(每行一筆)

Input (3 numbers):
11010119900101****
31010119851215****
44030120000628****

Output table:
  北京         | 1990-01-01 | 36 歲 | 男
  上海         | 1985-12-15 | 40 歲 | 女
  深圳         | 2000-06-28 | 25 歲 | 男

年齡計算規則(今年生日是否已過?)

DOB: 1990-09-15, Today: 2026-06-10
今年生日:2026-09-15 → 尚未到來
Age = 2026 - 1990 - 1 = 35

DOB: 1990-03-20, Today: 2026-06-10
2026 年生日已過
Age = 2026 - 1990 = 36

舊式 15 碼身分證轉 18 碼

Old (15-digit, pre-1999): 110101900101001
插入世紀碼:110101 + 19 + 900101 + 001 = 110101199001010 01
附加校驗碼(ISO 7064 MOD 11-2 演算法):X
Final 18-digit: 11010119900101001X

本工具會補上缺少的 19 世紀前綴並重新計算
校驗碼,使舊號碼可順利驗證。

隱私說明 — 所有處理皆在本地進行

貼上的身分證號絕不會傳送至伺服器。頁面在瀏覽器中
依下列位置解析字串:
  digits 1-6   → 行政區劃代碼(GB/T 2260)
  digits 7-14  → YYYYMMDD 出生日期
  digits 15-17 → 順序號(奇數為男、偶數為女)
  digit  18    → ISO 7064 MOD 11-2 校驗碼

常見問題

支援哪些身分證號格式?

中國大陸 18 位與 15 位居民身分證號(居民身份證號)。15 位舊格式會在解析前自動升級為 18 位。頁面同時顯示性別、發證地區(依地區碼判斷)以及出生日期。

年齡是怎麼從身分證號算出來的?

18 位身分證號的第 7 至 14 位以 YYYYMMDD 格式編碼出生日期。頁面從這個日期計算到今天,並採用法定年齡規則(必須過了當年生日才算滿 N 歲)。

性別是怎麼判斷的?

第 17 位(倒數第二位)代表性別:奇數為男性、偶數為女性。頁面直接讀取這一位,不會呼叫任何外部 API。

地區碼代表什麼?

前 6 位編碼發證當時的登記地區:省(1-2 位)、市(3-4 位)、縣/區(5-6 位)。注意這是登記地,不一定是目前居住地;許多人會保留戶籍地(戶籍)所在的身分證。

校驗碼是怎麼計算的?

第 18 位(最後一個字元)是前 17 位的 Mod-11-2 校驗碼,加權係數為 [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]。結果對 11 取餘後對應到 0-9 或 X。頁面會驗證這一位;校驗碼不正確代表身分證是偽造或輸入錯誤。

身分證號會傳到伺服器嗎?

不會。解析與驗證完全在你的瀏覽器中進行,身分證號不會離開你的裝置。不管如何,請把身分證號當作敏感個人資料看待,不要貼到任何不熟悉的工具裡。

為什麼頁面會對舊版 15 位身分證號發出提醒?

15 位身分證是 1999 年以前發出的(年份沒有世紀,也沒有校驗碼)。頁面會把它升級成 18 位,方法是補上世紀「19」並計算校驗碼,但這假設持有人是 1900 年代出生。1999 年以後出生的人一律使用 18 位身分證。