Форум: "Основная";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];
ВнизПоиск в строке 3ей запятой... Найти похожие ветки
← →
vuk (2002-02-12 15:09) [18]Ну и я тоже влезу. :o) Вот три функции - поиск слова с указания начальной позиции, выделения слова и подсчета количества слов.
function WordScan( const S : string; var StartPos, WordLen : integer; Delimiters : TSysCharSet ) : boolean;
var
i, l : integer;
begin
Result := false;
WordLen := 0;
i := StartPos;
l := length( s );
StartPos := 0;
while i <= l do
if s[i] in Delimiters then
inc(i)
else
begin
StartPos := i;
break;
end;
while i <= l do
if not(s[i] in Delimiters) then
begin
inc(i);
inc( WordLen );
end else
break;
Result := WordLen <> 0;
end;
function ExtractWord( const s : string; WordNumber : integer;
Delimiters : TSysCharSet ) : string;
var
wStart, wLen, n : integer;
begin
wStart := 1;
n := 0;
while WordScan( s, wStart, wLen, Delimiters ) do
begin
inc( n );
if n = WordNumber then
begin
Result := Copy( s, wStart, wLen );
exit;
end
else
inc( wStart, wLen );
end;
end;
function CountWords( const s : string; Delimiters : TSysCharSet ) : integer;
var
wStart, wLen : integer;
begin
Result := 0;
wStart := 1;
while WordScan( s, wStart, wLen, Delimiters ) do
begin
inc( Result );
inc( wStart, wLen );
end;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c