Тема: Лаба
Показать сообщение отдельно
  #2  
Старый 05.12.2013, 07:10
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,105
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Надо именно так или можно любым способом?
Я бы сделал так:
Код:
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;

Здесь ищется слово, которое стоит в середине слов в строке. Т.е. если срока 'восемьдесят два три', то должно попасть слово 'два', а не 'восемьдесят', хотя если считать по буквам, то попадает слово 'восемьдесят'.
Ответить с цитированием