PDA

Просмотр полной версии : Выдергивание слов


GreenBear
14.11.2005, 22:45
На делфи.
Вот, например, мне надо из текстого файлы выдернуть все слова, которые содержат символ @...
... как это реализовать?

ZaCo
14.11.2005, 22:58
смотря что понимать под словом. если это просто последовательность символов без пробелов то я вообще не понимаю сложности задачи - опиши конкретней условие

GreenBear
14.11.2005, 23:08
ну есть текст, нужно в отдельный файл записать все слова, в которых есть знак @
не сложно тем кто знает, а тем кто его не знает ето сложно =((

RevenAnt
14.11.2005, 23:19
ну если считать слова ето части разделённые пробелом, то:

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;

...а так намного проще ето сделать в Пёрле ... имхо ....

___ ввод (x.txt)

re@v vas here+qwe
and s@m time
@aga asd

___ вывод (memo1.text)

[re@v ]
[s@m ]
[@aga ]

GreenBear
14.11.2005, 23:22
Спасибо большое, спас!

Meister
21.11.2005, 17:54
Это что б из баз уинов выдергивать только мыла?