Вверх ↑
Ответов: 1343
Рейтинг: 31
#1: 2020-05-22 00:09:47 ЛС | профиль | цитата
вроде заработало))



function _StrCmp(Str, Msk: PChar): Boolean;
begin
while (Str^ <> #0) and (Msk^ <> #0) do
begin
if Msk^ = '*' then
begin
if _StrCmp(Str, Msk + 1) then
begin
Result := True;
exit;
end;
end
else
if Msk^ = '#' then
begin
if Str^ in ['A'..'F','1'..'9'] then Inc(Msk)
else break;
end
else
if Msk^ = '^' then
begin
if Str^ in ['1'..'8'] then Inc(Msk)
else break;
end
else
if (Msk^ = '?') or (Msk^ = Str^) then Inc(Msk)
else break;
Inc(Str);
end;
Result := (Str^ = #0) and (Msk^ = #0);
end;

function StrCmp(Str, Msk: string): Boolean;
begin
Result := _StrCmp(PChar(Str), PChar(Msk));
end;
карма: 2

0