смотря что понимать под словом. если это просто последовательность символов без пробелов то я вообще не понимаю сложности задачи - опиши конкретней условие
ну если считать слова ето части разделённые пробелом, то:
Цитата:
procedure TForm1.SubClick(Sender: TObject);
var f:textfile;
i,j,l,r:integer;
s,s1:string;
begin
AssignFile(f,'c:\x.txt');
reset(f);
while not Eof(f) do
begin
readln(f,s);
l:=1;
for i:=1 to length(s) do
begin
r:=pos(' ',s);
s1:=copy(s,l,r);
delete(s,l,r);
if length(s1)>1 then
if (pos('@',s1)>0) then memo1.Lines.Add('['+s1+']');
end;
if (pos('@',s1)>0) then memo1.Lines.Add('['+s+']');
end;
end;
...а так намного проще ето сделать в Пёрле ... имхо ....