Показать сообщение отдельно
  #1  
Старый 15.05.2010, 16:24
Аватар для T-dayne
T-dayne T-dayne вне форума
Начинающий
 
Регистрация: 26.01.2010
Сообщения: 180
Репутация: 31
Восклицание разбить текст на слова и поместить в массив

Имеется набранный текст в memo нужно поделить этот текст на слова и знаки, и каждое слово(знак) поместить в массив. Делаю так:
Код:
var
p,i,l: integer;
tmp: string;
arr: array[1..20] of string;
begin
 l:=0;
 for i:=0 to memo1.lines.Count-1 do
  begin
   tmp:=memo1.Lines[i];
   tmp:=stringreplace(tmp,',',' ,',[rfReplaceAll]);
   tmp:=stringreplace(tmp,'!',' !',[rfReplaceAll]);
   tmp:=stringreplace(tmp,'?',' ?',[rfReplaceAll]);
   tmp:=stringreplace(tmp,'.',' .',[rfReplaceAll]);
 while length(tmp)>0 do
  begin
   inc(l);
   p:=pos(tmp,' ');
   arr[l]:=copy(tmp,1,p);
   delete(tmp,1,p+1);
  end;
end;
end;

Выпадает ошибка при выполеннии этой процедуры. Чувствую есть более простые методы разделить текст на слова. Не подскажете?
Спасибо.
Ответить с цитированием