Компьютерный форум NoWa.cc

Компьютерный форум NoWa.cc (https://nowa.cc/index.php)
-   Delphi (https://nowa.cc/forumdisplay.php?f=300)
-   -   Поиск по каждому слову (https://nowa.cc/showthread.php?t=155062)

Sergmzk 02.04.2008 06:57

Поиск по каждому слову
 
Добрый день.
Подскажите, не могу сообразить, в RicheDit набран какой то текст, нужно перебирая все слова сверить их с базой, по первому я сделал так, а как сделать чтобы он перебирал по каждому слову.


procedure TForm1.Button1Click(Sender: TObject);
var
StartPos, Position, Endpos, i: Integer;
SearchText, f1: string;
begin

//------------------------------------------
f1:=leftStr(RichEdit1.Text,Pos(' ',RichEdit1.Text)-1);
SearchText:=f1;
StartPos := 0;
with RichEdit1 do
begin
Query1.First;
Endpos := Length(RichEdit1.Text);
Lines.BeginUpdate;
while FindText(SearchText, StartPos, Endpos, [stMatchCase])<>-1 do
begin
Endpos := Length(RichEdit1.Text) - startpos;
Position := FindText(SearchText, StartPos, Endpos, [stMatchCase]);
begin
for i:=1 to Query1.RecordCount do
begin
if Query1['TXT1']=SearchText then
Memo1.Text:=Query1['P_K'];
Query1.Next;
end;
end;
Inc(StartPos, Length(SearchText));
SetFocus;
SelStart := Position;
SelLength := Length(SearchText);
end;
Lines.EndUpdate;
end;
//-------------------------------------------

end;

ligth_user 02.04.2008 14:45

Ответ: Поиск по каждому слову
 
Может, скопировать весть текст в новый массив строк, а потом в цикле находить первое слово (текст до первого пробела), обработать это слово, удалить из текста и т.д.
Или найти сторонний компонент, который делит строку на массив подстрок по указанному разделителю. В perl и php эта функция называется split, по-моему. И когдато встречал ее реализацию для Дельфи.

Sergmzk 04.04.2008 03:33

Ответ: Поиск по каждому слову
 
Цитата:

Сообщение от ligth_user (Сообщение 1573641)
Может, скопировать весть текст в новый массив строк, а потом в цикле находить первое слово (текст до первого пробела), обработать это слово, удалить из текста и т.д.
Или найти сторонний компонент, который делит строку на массив подстрок по указанному разделителю. В perl и php эта функция называется split, по-моему. И когдато встречал ее реализацию для Дельфи.

угу - так и сделал )


Текущее время: 13:09. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Copyright ©2004 - 2026 NoWa.cc

Время генерации страницы 0.01984 секунды с 9 запросами