Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.02.28;
Скачать: CL | DM;

Вниз

Поиск в строке 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;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.012 c
1-90543
Demon ltd
2002-02-10 00:27
2002.02.28
Работа с Memo


14-90654
Mike_Goblin
2002-01-11 10:11
2002.02.28
Москвичи - может кто сдает квартиру???


4-90703
LucysII
2001-12-28 20:44
2002.02.28
Помогите пожалуйста!


1-90567
SynteZZZ
2002-02-10 23:09
2002.02.28
Как сравнить 2 картинки?


3-90522
ЕвгенийА
2002-02-02 00:57
2002.02.28
Ошибочка при открытии базы...