Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-04-2007
Avatar de ZayDun
ZayDun ZayDun is offline
Miembro
 
Registrado: mar 2007
Posts: 129
Poder: 18
ZayDun Va por buen camino
Question Copiar Caracteres

hola! tengo una duda que espero que me sepais resolver....

Tengo un edit1.text al cual le llegan datos tipo... "RECIBIDO"($&%W%...

y como veis llega con las dichosas "" que la primera he logrado quitarla de esta manera

procedure TForm1.Button1Click(Sender: TObject);
begin
Delete(i, 1, 1);
End;


el problema es que no se como hacer para copiar RECIBIDO ya que despues del ultimo " me llega mas texto basura... gracias a todos los foreros por molestarse en leer mi problema.
Responder Con Cita
  #2  
Antiguo 09-04-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.114
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Tal como planteas el asunto, es decir, asumiendo que nos ha de llegar "basura" junto a la cadena que nos interesa, se me ocurre a bote pronto buscar, directamente, dicha cadena. Esto suponiendo que a ti lo que te interesa es saber si la cadena contiene "recibido" o no, como me parece que es.

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  if Pos('RECIBIDO', Edit1.Text) <> 0 then
  begin
    ShowMessage('La cadena contiene RECIBIDO');
  end;
end;
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 09-04-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Yo he estado pensando en tu pregunta.... y viendo lo que pone dec... me he quedado más confundido... No logro captar la finalidad que se persigue...

1. Si simplemente deseas saber si está la cadena PERMITIDO...
2. O Deseas borrar todo lo que le sigue: la basura...

Porque me llama la atención del Delete() que pones.

Si es la opción dos... no sería algo más sencillo hacer algo como:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  if Pos('PERMITIDO',Edit1.Text) <> 0
     then Edit1.Text := 'PERMITIDO';
end;

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #4  
Antiguo 09-04-2007
Avatar de ZayDun
ZayDun ZayDun is offline
Miembro
 
Registrado: mar 2007
Posts: 129
Poder: 18
ZayDun Va por buen camino
Question Re:

Hola de nuevo, teneis que perdonarme por que creo que no me explique como deberia. estoy haciendo un programa que traduzca una palabra del ingles a español y para ello conecto con una web a traves de un clientsocket, tengo un edit1.text que es donde pongo la palabra que quiero traducir, me conecto a la web y empiezo a recibir datos... la traducion esta metida entre estos caracteres result("palabra_ya_traducida")%&%""S% logro quitar result(" quedandome asi palabra_ya_traducida")&%&%"·&%" y lo que me gustaria ahora es poder decirle a delphi que elimine desde " hasta el final del un edit2.text donde yo pongo la respuesta. gracias de nuevo y perdonar si no me explique bien, UN SALUDO.
Responder Con Cita
  #5  
Antiguo 09-04-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Pues ¿cómo quitas la primera parte? Porque el método que describiste al principio del hilo no funciona si hay algo antes del primer ".

Yo haría algo así:

Código Delphi [-]
var
  i: Integer;

begin
  (* Busco la primera " *)
  i := Pos('"', Texto);
  if i > 0 then
  begin
    Delete(Texto, 1, i); // borro todo hasta la primera "

    (* Busco la segunda " *)
    i := Pos("", Texto);
    if i > 0 then
    begin
      Delete(Texto, i, MaxInt); // borro hasta el final (tomado de seoane )
    end;
  end;
end;

// Saludos
Responder Con Cita
  #6  
Antiguo 09-04-2007
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 19
luisgutierrezb Va por buen camino
pues a mi se me haria mas facil algo asi como:
Código Delphi [-]
strResultado := Copy(strTraduccion, Pos('(')+2, Pos(')'-2 - Pos('(')+2);

la idea es buscar cuando se abre el parentesis, y agregamos 2 caracteres para que empieze en la palabra, despues buscamos donde se cierra, quitamos los caracteres, restamos la primera posicion para saber el numero de caracteres a copiar que pide la funcion y ya
Responder Con Cita
  #7  
Antiguo 09-04-2007
Avatar de ZayDun
ZayDun ZayDun is offline
Miembro
 
Registrado: mar 2007
Posts: 129
Poder: 18
ZayDun Va por buen camino
RE: Gracias!

gracias por tomaros vuestro tiempo, los codigos me han funcionado perfectamente!!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
sentencia de mas de 255 caracteres federico1 Conexión con bases de datos 4 30-11-2006 23:11:26
Codificación de caracteres elcigarra Varios 4 25-11-2005 22:13:15
Caracteres extraños (#$D#$A) Iuconlas Varios 2 23-09-2005 17:09:05
Cadena de mas de 50 caracteres luigidean Tablas planas 3 02-10-2004 03:09:39
String de mas de 255 caracteres ctronx Varios 6 01-10-2004 17:58:23


La franja horaria es GMT +2. Ahora son las 17:58:12.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi