Código
var
i:integer;
ii:integer;
TextoF:string;
begin
i:=1;
ii:=1;
TextoF := '';
if Ord(Texto[1]) <> Caractere then Texto:=chr(Caractere)+Texto;
if Ord(Texto[Length(Texto)]) <> Caractere then Texto:=Texto+chr(Caractere);
while i < Length(Texto) do
begin
inc(i);
if ii = Posicao then TextoF:=TextoF + Texto[i];
if Ord(Texto[i]) = Caractere then inc(ii);
end;
if (Posicao <> 0) then result:=copy(TextoF,1,length(TextoF)-1)
else result:=IntToStr(ii-1);
end;
{ ------------- Gettok By Psychlo ------------------
Uso, Gettok(Texto,Posicao,Caractere)
se posicao = 0 entao
retorna numero de palavras ligadas pelo caractere
senao retorna a palavra na posicao
quem já mexeu com mIRC Scripting vai se adpatar rapidamente a funcao pois ela lembra muito o $gettok no mIRC...
exemplo:
Gettok('Delphi Rulla a lote',1,32) { retorna Delphi }
Gettok('Delphi Rulla a lote',2,32) { retorna Rulla }
Gettok('Delphi Rulla a lote',3,32) { retorna a }
Gettok('Delphi Rulla a lote',4,32) { retorna lote }
Gettok('Delphi Rulla a lote',0,32) { retorna 4 }
Gettok('Delphi;Rulla;a;lote',1,59) { retorna Delphi }
Lembrando que chr(32) = ' '
e chr(59) = ';'
------------- Gettok By Psychlo ------------------
}
Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009