Вниз
Скачать: CL | DM;

сравнение числа с маской   Найти похожие ветки 

 
tippa ©   (2010-04-18 20:04) [0]

Не могу написать функцию, которая берет маску в виде строки (например "XXYZZZ") и число, и возвращает true, если число подходит к этой маске.
function proverim(mask:string;n:integer):boolean;
//proverim("ZXXVVV",166000)->true

Дайте пожалуйста совет.


 
И. Павел ©   (2010-04-18 20:11) [1]

Как вариант:
Сперва сравниваем длины числпа и маски. Потом берем первую цифру числа - проходим по всем остальным цифрам - если маска та же а цифра другая - возвращаем ложь. Потом переходим к второй цифре и т.д.


 
DVM ©   (2010-04-18 20:28) [2]


> tippa ©

Может регулярные выражения использовать?


 
tippa ©   (2010-04-18 22:09) [3]

спс, вроде работает)
function maska(mask:string;n:string):boolean;
var i,j:integer;
   len:integer;//длина маски и числа
begin
Result:=true;
if length(mask)<>length(n) then
                                begin
                                Result:=false;
                                exit
                                end;
len:=length(mask);
for i:=1 to len do
 begin
 for j:=1 to len do
   begin
   if (mask[i]=mask[j]) and (n[i]<>n[j]) then
                                         begin
                                         Result:=false;
                                         exit
                                         end;
   end;
 end;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.048 c
15-1274451226
nobody
2010-05-21 18:13
2010.08.27
SVN plugin for Delphi 6


15-1269120602
Юрий
2010-03-21 00:30
2010.08.27
С днем рождения ! 21 марта 2010 воскресенье


2-1271066929
Nostalgia
2010-04-12 14:08
2010.08.27
сортировка методом Шелла


2-1273310856
FIL-23
2010-05-08 13:27
2010.08.27
как добавить запись в базу с помощь sql запроса


3-1237973641
zdm
2009-03-25 12:34
2010.08.27
Посмотреть членство в группах пользователя FireBird




   Наверх