Надо именно так или можно любым способом?
Я бы сделал так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
I : Integer;
slWords, slBuf : TStringlist;
begin
slWords := TStringList.Create;
slBuf := TStringList.Create;
Try
slBuf.Delimiter := ' ';
For I := 0 To RichEdit1.Lines.Count-1 Do
Begin
slBuf.DelimitedText := RichEdit1.Lines[i];
slWords.Add(slBuf[slBuf.Count div 2]);
End;
slWords.SaveToFile('MyFile.txt');
Finally
slBuf.Free;
slWords.Free;
End;
end;
Здесь ищется слово, которое стоит в середине слов в строке. Т.е. если срока 'восемьдесят два три', то должно попасть слово 'два', а не 'восемьдесят', хотя если считать по буквам, то попадает слово 'восемьдесят'.