Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: CL | DM;

Вниз

Поиск в TStringList, но не просто find, а с частичным совпадением   Найти похожие ветки 

 
jab~   (2003-10-21 14:29) [0]

У меня есть TStringList
который содержит записи:
0: FRM
1: RES 16A 256
2: BMP GIF JPG

Мне нужно найти в какой строке находится например RES или JPG,
т.е. нужна функция которая искала бы по строкам стринглиста и возвращала бы номер строки в которой встречается указаный текст.
Обычный find не подходит т.к. он ищет с полным совпадением!
var
MyList: TStringList;
Index: Integer;
begin
MyList := TStringList.Create;
MyList.Add("FRM");
MyList.Add("RES 16A 256");
MyList.Add("BMP GIF JPG");
ListBox1.Items.AddStrings(MyList);
if MyList.Find("RES", Index) then Label1.Caption := IntToStr(Index);
MyList.Free;
end;
Это не подходит т.к. он ничего не найдёт в таком случае.


 
Игорь Шевченко ©   (2003-10-21 14:32) [1]

В цикле, перебором строк, с использованием функций Pos и Copy


 
Fredericco ©   (2003-10-21 14:40) [2]

Или
Uses Masks;
...
function MatchesMask(const Filename, Mask: string): Boolean;

Почитай в хелпе про нее.


 
jab~   (2003-10-21 15:00) [3]

Пасиба пасиба.... я написал так:

procedure TForm1.Button1Click(Sender: TObject);
var
MyList: TStringList;
i: Integer;
begin
ListBox1.Items.Clear;
MyList := TStringList.Create;
MyList.Add("BMP");
MyList.Add("FRM");
MyList.Add("JPG JEPG GIF");
MyList.Add("IMG TIFF SCR");
ListBox1.Items.AddStrings(MyList);
For i:=0 to MyList.Count-1 do
begin
if Pos("TIFF",MyList.Strings[i])<>0 then Label1.Caption:=IntToStr(i);
end;
MyList.Free;
end;

:) вроде работает :):):)


 
Fredericco ©   (2003-10-21 15:13) [4]

Ну и отлично )))
А вот это подправь
if Pos("TIFF",MyList.Strings[i]) >0



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

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
1-41561
INTAARI
2003-10-27 12:39
2003.11.13
Выявление утечки памяти


3-40973
Пубертанец
2003-10-24 17:09
2003.11.13
Уже заколебался с запросом...


4-42226
Ded Moroz
2003-09-02 16:35
2003.11.13
Изменение размера элемента менюшки


6-41788
Анатолий
2003-09-18 10:08
2003.11.13
Автоапдейты


14-42109
Андрей Пономарев
2003-10-22 15:53
2003.11.13
OLAP и what-if анализ