Ver Mensaje Individual
  #2  
Antiguo 09-07-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Reputación: 22
Caro Va por buen camino
Hola octalh, yo utilizaria un StringList y sus propiedades Delimiter y DelimitedText, donde el separador entre palabras no sería el + y - sino talvez un vacio, pero el mismo separador para toda la cadena, le pasas la cadena a delimitedText el cual te lo separa en el StringList, despues solo sería recorrer tu StringList.

Código Delphi [-]
slLinea : TStringList;
begin
 slLinea := TStringList.Create;

 slLinea.Delimiter:=#32; //separador que utilizara DelimitedText
 slLinea.DelimitedText := 'hola como estas';

la otra forma utilizando pos y copy

Código Delphi [-]
var
 Cadena, CadenaTmp, Palabra : String;
 PosIni, PosFin : Integer;
begin
 Cadena := '+hola-xxxxx+como-xxxxx+estas-';
 CadenaTmp := Cadena;
 while Pos('-',CadenaTmp)>0 do
  begin
    PosIni := Pos('+',CadenaTmp);
    PosFin := Pos('-',CadenaTmp);
    Palabra := Copy( CadenaTmp, PosIni+1, PosFin-PosIni-1);
    CadenaTmp[PosIni] := ' ';
    CadenaTmp[PosFin] := ' ';
    showmessage(Palabra);
  end;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita