西班牙DNI/NIE檢查字母計算機(Letra DNI驗證)
免費驗證與計算西班牙國民身分證字號DNI、外國人身分號碼NIE檢查字母的線上計算機。只要輸入本體數字即可自動計算檢查字母(1個英文字母),若連同末尾字母一併輸入則會驗證其正確性。所有運算皆在瀏覽器端完成,不會傳送到伺服器。
西班牙DNI/NIE檢查字母計算機是什麼
本工具是一款免費的線上計算機,可驗證與計算西班牙國民身分號碼DNI(Documento Nacional de Identidad)以及外國人身分號碼NIE(Número de Identidad de Extranjero)的檢查字母。做法是將8位數字(NIE需先把開頭的X、Y、Z替換為0、1、2)除以23取餘數,再透過23個字母的對應表算出檢查字母。
系統會根據末尾是否有英文字母、開頭字元等資訊,自動判斷輸入內容的種類(DNI或NIE、僅本體或含檢查字母),使用者不需要手動切換模式。若輸入的號碼含有檢查字母,系統會驗證其正確性;若只輸入本體,則會計算並補上正確的檢查字母。請注意,本工具僅能判斷格式是否正確,無法確認該號碼是否確實核發給某位真實人士(如需確認真實性,須向西班牙政府機關查詢)。
使用方法
- 輸入DNI或NIE 即使貼上的內容含有連字號或句點也可以直接輸入。
- 確認類型 畫面會顯示偵測到的類型(DNI/NIE、僅本體/含檢查字母)。
- 查看結果 會顯示驗證結果,或系統計算出的檢查字母。
- 嘗試其他號碼 按下清除按鈕可重設輸入內容,方便確認其他號碼。
用好本工具的小技巧
- 即使貼上的內容含有連字號或句點也沒關係,這些符號會在計算前自動去除。
- 只要輸入不含檢查字母的本體數字,系統會自動計算並顯示正確的檢查字母。
- NIE是以X、Y、Z其中一個字母開頭、後接7位數字的號碼。計算時會先將開頭字母分別替換為0、1、2,再套用與DNI相同的計算公式(對23取餘數)。
- 輸入小寫字母也會自動轉換為大寫再進行判斷,因此不需要在意英文字母的大小寫。
- 本工具僅能判斷檢查字母的格式是否正確,無法確認該號碼是否確實核發給某位真實人士。如需確認號碼是否實際存在,請洽詢西班牙內政部(Ministerio del Interior)的警察或行政窗口。
應用情境
電商、付款表單的輸入錯誤檢查
可在提交前確認顧客於西班牙電商網站或付款表單輸入的DNI/NIE,其檢查字母是否與本體一致、有無抄寫錯誤。
人資、總務人員的資料核對
在將新進員工或派駐西班牙人員提供的DNI/NIE登錄至內部系統前,可先用檢查字母確認資料正確性。
系統開發時驗證邏輯的參考
可作為開發西班牙相關表單或會員註冊系統時,DNI/NIE驗證邏輯(mod 23計算)預期行為的參考依據。
舊紙本資料的數位化
將紙本文件上的DNI/NIE建檔為資料庫時,可利用檢查字母核對是否有OCR辨識錯誤。
用語集
- DNI(Documento Nacional de Identidad)
- 核發給西班牙公民的8位數字國民身分號碼,舉凡開立銀行帳戶、身分驗證等日常生活各層面都會用到。
- NIE(Número de Identidad de Extranjero)
- 核發給持外國籍、在西班牙居留人士的識別號碼,開頭會加上X、Y、Z其中一個英文字母。
- Letra de Control(檢查字母)
- 附加在DNI/NIE本體末尾的1個檢查用英文字母,用於偵測輸入錯誤或誤植,由23個字母對應表計算而得。
- mod 23(除以23取餘數)
- 將本體8位數字除以23取餘數,再以該餘數作為預先定義的23字母表索引,藉此算出檢查字母的計算方式。
- Ministerio del Interior(內政部)
- 西班牙政府機關,負責DNI/NIE的核發,以及國內治安與行政相關業務。
常見問題
閒話 ― 西班牙全國通用的「除以23」演算法
DNI(Documento Nacional de Identidad,國民身分號碼)是西班牙公民出生後不久便會取得的8位數識別號碼。從開立銀行帳戶、申辦手機門號、選民登記到使用各項公共服務,DNI都是西班牙日常生活中不可或缺的身分證明方式。另一方面,持外國籍在西班牙居留一定期間的人士,則會取得NIE(Número de Identidad de Extranjero,外國人身分號碼)。號碼位數與檢查機制與DNI相同,唯一差異是開頭會加上X、Y、Z其中一個英文字母。
檢查字母(Letra de Control)的原理其實很單純:將8位數字除以23取餘數,再依這個餘數從一份預先定好的23個字母表(TRWAGMYFPDXBNJZSQVHLCKE)中選出對應的字母即可。NIE的情況則是先將開頭的X、Y、Z分別替換為0、1、2,再進行相同的計算。這23個字母有意排除了母音A、E、I、O、U,也刻意避開容易混淆的字元(例如O與0),目的是在手寫或口頭傳達時降低誤讀的機率。
這套機制從1970年代沿用至今幾乎未曾改變,西班牙許多政府機關的線上表單都會即時以這個公式驗證使用者輸入的DNI/NIE檢查字母是否正確。不只是政府櫃檯,其實銀行與網路商店的身分驗證表單背後,也常常運作著同一套邏輯,算是一則不太為人所知的小知識。