![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Как проверить правильность International Bank Account NumberDelphi , Синтаксис , ПаролиАвтор: http://www.swissdelphicenter.ch // IBAN = International Bank Account Number // Example : CH10002300A1023502601 function ChangeAlpha(input: string): string; // A -> 10, B -> 11, C -> 12 ... var a: Char; begin Result := input; for a := 'A' to 'Z' do begin Result := StringReplace(Result, a, IntToStr(Ord(a) - 55), [rfReplaceAll]); end; end; function CalculateDigits(iban: string): Integer; var v, l: Integer; alpha: string; number: Longint; rest: Integer; begin iban := UpperCase(iban); if Pos('IBAN', iban) > 0 then Delete(iban, Pos('IBAN', iban), 4); iban := iban + Copy(iban, 1, 4); Delete(iban, 1, 4); iban := ChangeAlpha(iban); v := 1; l := 9; rest := 0; alpha := ''; try while v <= Length(iban) do begin if l > Length(iban) then l := Length(iban); alpha := alpha + Copy(iban, v, l); number := StrToInt(alpha); rest := number mod 97; v := v + l; alpha := IntToStr(rest); l := 9 - Length(alpha); end; except rest := 0; end; Result := rest; end; function CheckIBAN(iban: string): Boolean; begin iban := StringReplace(iban, ' ', '', [rfReplaceAll]); if CalculateDigits(iban) = 1 then Result := True else Result := False; end; Привет! Я готов помочь вам перевести текст на русский язык. Вот перевод: Это фрагмент кода на Delphi, который проверяет корректность международного банковского счета (IBAN). Процесс валидации IBAN включает в себя несколько шагов:
Вот разбивка функций в коде:
Чтобы использовать этот код, просто вызовите функцию
Обратите внимание, что это реализация по стандарту SWIFT BIC4 для валидации IBAN. Если вам нужно валидировать IBAN по другому стандарту, вы может потребоваться модифицировать код соответствующим образом. Некоторые предложения по улучшению:
Статья описывает функции на языке Delphi для проверки правильности International Bank Account Number (IBAN), включая расшифровку буквенных символов в номере счета и подсчет контрольной суммы. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |