![]() |
![]() ![]() ![]() ![]() |
|
Как проверить правильность 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 | ||||