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

поиск по тексту   Найти похожие ветки 

 
Aleks   (2004-10-24 14:15) [0]

Как в сроке найти нужное слово, пожалуйсто с примером. Я только начинаю.


 
Kolan ©   (2004-10-24 14:33) [1]

procedure TForm1.BitBtn1Click(Sender: TObject);
var s,temp_s, what_to_find:string;
i:integer;
flag:boolean;
begin
 flag:=false;
 temp_s:="";
 what_to_find:="22";
 s:=edit1.Text;
 for i:=1 to length(s) do
   if (s[i]<>"")and(s[i]<>" ") then {Разделители}
   temp_s:=temp_s+s[i]
   else
   begin
      if temp_s=what_to_find then  flag:=true;
      temp_s:="";
   end;

if temp_s=what_to_find then  flag:=true;

 if flag then label1.Caption:="Найдено"
 else  label1.Caption:="Не Найдено"

end;

Навернека можно упростить но лень только сейчас сделаал.
Там где {Разделители} добавь все что у тебя разделитель слов. (Точки запятые ...)


 
Anatoly Podgoretsky ©   (2004-10-24 14:42) [2]

Конечно можно проще, функция POS


 
Anatoly Podgoretsky ©   (2004-10-24 14:42) [3]

Удалено модератором


 
Kolan ©   (2004-10-24 15:15) [4]


> Конечно можно проще, функция POS

Может ему нодо как раз алгоритм.
> Я только начинаю.
!


 
Anatoly Podgoretsky ©   (2004-10-24 15:26) [5]

Нет ему нужно найти нужное слово


 
ЮрийК ©   (2004-10-24 17:31) [6]

POS будет находить слова в зависимости от регистра. Поэтому и слово и текст нужно привести к одному регистру.

len := Length(word);
text1 := UpperCase(text);
word1 := UpperCase(word);
nPos := Pos(word1, text1);
if (text1[i-1] in [DELIMITERS]) and (text1[i+len] in [DELIMITERS]) then ShowMessage("OK");
 // чтобы найти следующее вхождение
text1 := Copy(text1, i+1, MaxInt);
nPos := Pos(word1, text1);


 
Aleks   (2004-10-25 01:18) [7]

Большое Спасибо всем кто откликнулся Вы мне очень помогли.
Вопрос закрыт. :)



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

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



Память: 0.46 MB
Время: 0.021 c
6-1093813750
Gear
2004-08-30 01:09
2004.11.07
UDP


1-1098810143
TIKO
2004-10-26 21:02
2004.11.07
координаты иконки в теле файла


14-1097843522
dreamse
2004-10-15 16:32
2004.11.07
Open Source софт для клубов


3-1097223065
Akoli
2004-10-08 12:11
2004.11.07
Надобы текстовый файл в МЕМО поле фугануть


1-1098709072
Barbaris
2004-10-25 16:57
2004.11.07
Почему иногда неверно работает?




   Наверх