Проверьте числовую строку по правилу ISO 7064 MOD 97-10, которое международно применяют для IBAN и похожих идентификаторов.
Алгоритм
После удаления пробелов и нецифровых символов:
- Рассматривайте всю строку как большое целое (или обрабатывайте длинные значения по частям).
- Вычислите остаток по модулю 97.
- Строка корректна, когда остаток равен 1.
Это эквивалентно переносу контрольных цифр в конец, преобразованию букв в числа (A→10 … Z→35) и требованию делимости на 97 — тому же правилу, что при проверке IBAN.
Когда применять
Проверяйте собственные референсные номера с MOD-97, сверяйте реализации IBAN в разработке или объясняйте, почему европейские банковские счета содержат математическую контрольную сумму.
Ограничения
Проверка подтверждает целостность формата, а не то, что счёт открыт или доступен. Очень длинные вводы обрабатываются как строки цифр; ведущие нули важны. Преобразование букв следует схеме IBAN — произвольные буквенные полезные нагрузки без этого отображения вне области действия.
Пример
Введите значения образца по умолчанию в форме и сравните вывод с известным эталоном; меняйте по одному полю.