
27.11.2012, 22:43
|
 |
LMD-DML
|
|
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
|
|
Подсчёт уникальных слов в тексте:
Код:
function WtN(ds: string): integer;
const
D = ['.', ',', ':', ';', '!', '?', '-', ' ', #9, #10, #13];
var
i,b: integer;
Tmp: TStringList;
str: string;
flg: boolean;
begin
Tmp:= TStringList.Create;
str:= '';
for i := 1 to Length(ds) do begin
if ds[i] in D then Continue else str:= str + ds[i];
if (i = Length(ds)) or (ds[i + 1] in D) then
begin
flg:= true;
for b := 0 to Tmp.Count - 1 do
if Tmp.Strings[b] = str then flg:= false;
if flg then Tmp.Add(str);
str:='';
end;
end;
Result:= Tmp.Count;
Tmp.Free;
end;
|