std.validate.iban
IBAN (International Bank Account Number, ISO 13616) ist der internationale Standard für Bankkontonummern. Die Prüfung erfolgt über den Mod-97-Algorithmus sowie länderspezifische Längenvorgaben. Die Unit unterstützt über 30 Länder, extrahiert Bankleitzahl und Kontonummer und normalisiert unterschiedliche Schreibweisen (mit/ohne Leerzeichen).
Konstanten
| Name | Wert | Bedeutung |
|---|---|---|
IBAN_OK | 0 | Gültig |
IBAN_ERR_INVALID_LENGTH | 1 | Falsche Länge |
IBAN_ERR_INVALID_CHAR | 2 | Ungültiges Zeichen |
IBAN_ERR_INVALID_CHECK | 3 | Mod-97-Prüfung fehlgeschlagen |
IBAN_ERR_UNKNOWN_COUNTRY | 4 | Unbekanntes Länderkürzel |
IBAN_ERR_INVALID_COUNTRY_LENGTH | 5 | Länge entspricht nicht dem Landesstandard |
Verwendung
import std.validate.iban;
var iban: pchar := "DE89370400440532013000";
var result: int64 := IBANValidate(iban);
if (result = IBAN_OK) {
log_info(IBANGetCountry(iban)); // "DE"
log_info(IBANGetBankId(iban)); // "37040044"
log_info(IBANFormat(iban)); // "DE89 3704 0044 0532 0130 00"
}
// Mit Leerzeichen normalisieren
var normalized: pchar := IBANNormalize("DE89 3704 0044 0532 0130 00");
// → "DE89370400440532013000"
// Erwartete Länge für Land
var len: int64 := IBANCountryLength("DE"); // 22
Funktionen
| Signatur | Sichtbarkeit | Beschreibung |
|---|---|---|
IBANValidate(iban: pchar): int64 | pub | IBAN vollständig validieren; gibt IBAN_OK oder Fehlercode zurück |
IBANNormalize(iban: pchar): pchar | pub | IBAN normalisieren: Leerzeichen und Bindestriche entfernen |
IBANFormat(iban: pchar): pchar | pub | IBAN in Vierergruppen formatieren (z.B. „DE89 3704 …“) |
IBANGetCountry(iban: pchar): pchar | pub | Zweistelliges Länderkürzel aus IBAN extrahieren |
IBANGetCountryName(country: pchar): pchar | pub | Ländername anhand Länderkürzel liefern |
IBANCountryLength(country: pchar): int64 | pub | Erwartete IBAN-Länge für das angegebene Land |
IBANGetBankId(iban: pchar): pchar | pub | Bankleitzahl (BLZ) aus IBAN extrahieren |
IBANCalculateCheck(iban: pchar): pchar | pub | Prüfziffern für IBAN berechnen (ersetzt Positionen 3–4) |
Letzte Aktualisierung: 2026-05-22
