Ver Mensaje Individual
  #1  
Antiguo 03-07-2007
gabrielkc gabrielkc is offline
Miembro
 
Registrado: jun 2007
Ubicación: Chihuahua Mexico
Posts: 118
Reputación: 17
gabrielkc Va por buen camino
Obtener Subcadena

hay veces que necesitamos obtener una subcadena o serie de subcadenas de una cadena. La función recibe una cadena formateada para tal propósito, la subcadena en un índice determinado y opcionalmente un separador

Código:
function GetText(s: string; Indice: Byte;Separador:string='|'): string;
var i:Integer;
tmp:string;
begin
  i:=1;
  while i<=Indice do
   begin
    Delete(s,1,Pos(Separador,s));
    Inc(i);
   end;
  if Pos(Separador,s)<>0 then
   tmp:=Copy(s,1,Pos(Separador,s)-1)
  else
   tmp:=s;
  if Length(tmp)=0 then
    tmp:=EmptyString;
  Result:=tmp;  
end;
ejem:

Tenemos la cadena
'12345|AGUA|H2O'

si llamamos la funcion con :
GetText('12345|AGUA|H2O',0);
nos devuelve '12345'

si llamamos la funcion con :
GetText('12345|AGUA|H2O',1);
nos devuelve 'AGUA'

Yo lo utilizo para personalizar en conjunto con el DrawText, los ListBox y los StringGrid
Responder Con Cita