
15.05.2010, 16:24
|
 |
Начинающий
|
|
Регистрация: 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;
Выпадает ошибка при выполеннии этой процедуры. Чувствую есть более простые методы разделить текст на слова. Не подскажете?
Спасибо.
|