Ver Mensaje Individual
  #8  
Antiguo 02-03-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por ungrande87 Ver Mensaje
Recien acabo de darme cuenta que al espacio tambien me lo toma como separar y eso que yo puse al punto . porque me pasa esto????
Hola.

Creo que a partir de Delphi 2006 existe la propiedad StrictDelimiter que soluciona ese problema. Pero para los que aún tenemos Delphi 7 hay que escribir un poco de código.

Una forma puede ser:
Código Delphi [-]
function SepararCadena(Cadena: string; const Delim: Char): TStrings;
var
  p: Integer;
begin
  Result:= TStringList.Create;
  Cadena:= Cadena + Delim;
  while Length(Cadena) > 0 do
  begin
    p:= Pos(Delim, Cadena);
    if p = Length(Cadena) then
      SetLength(Cadena,Length(Cadena)-1);
    Result.Add(Copy(Cadena, 1, p));
    Delete(Cadena, 1, p);
  end;
end;

Llamadas de ejemplo:
Código Delphi [-]
var
  Texto: string;
  TS: TStrings;
begin
  Texto:= 'Esta función, se podría haber evitado, si Delphi 7, '+
          'tuviera implementada la propiedad StrictDelimiter.';
  Memo1.Lines:= SepararCadena(Texto, ',');
  // otro ejemplo
  TS:= TStringList.Create;
  try
    TS:= SepararCadena(Texto, 'e');
    Memo1.Lines:= TS;
  finally
    TS.Free;
  end;
end;

Saludos.

Edito: ¡Al fín pude encontrar el hilo!... Creo que también te podría interesar esto
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 02-03-2012 a las 04:02:35.
Responder Con Cita