Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Eliminar Cadena De Caracteres.... (https://www.clubdelphi.com/foros/showthread.php?t=41847)

ZayDun 27-03-2007 20:53:28

Eliminar Cadena De Caracteres....
 
Hola! que tal?, saludos a toda la gente del foro!

Estoy creando una aplicacion en el que el cliente se conecta a un servidor envia unos datos y
el servidor responde con esos datos, hasta ahi todo bien, el problema comienza con la cadena de datos
pondre un ejemplo para que me entendais mejor

Cliente ---> Socket.SendText('Nick '+Texto.Text+#13#10);
El servidor me responde en el Memo asi..
Servidor ---> :InfoDelServidor:+"Nick Del Usuario" + La Conversacion...

Para detectar que ha llegado esos datos en el ONREAD del ClienSocket Tengo puesto
If pos (':Info',Datos) <> 0 then
...

entonces aqui comienza mi problema,dado que el dato ":infoDelServidor:" que recibo del servidor no siempre es
los mismo caracteres no se como hacer para decirle que elimine desde el primer ":" hasta el siguiente ":"

si vale de algo la palabra info siempre apararece por eso la tengo puesta para que la detecte en el
ONREAD pero depende del servidor a que me conecte me manda "InfoMISERVER".. "InfoDelphi" u otra..

espero que haya quedado clara la duda que tengo, y ya nos veremos por aqui al foro y espero poder ayudar en todo
lo posible, saludos!

maeyanes 27-03-2007 21:11:34

Hola...

Puedes usar las funciones Pos, y Delete que tiene Delphi... algo así:

Código Delphi [-]
Datos := ':InfoServidor: Textro cualquiera';
if Pos(':Info', Datos) > 0 then
begin
  // Como ya se sabe que siempre inicia con :Info la cadena se puede hacer algo como:
  // Datos será ahora Servidor: Texto cualquiera'
  Delete(Datos, 1, 5); 
  // Aquí eliminamos todo hasta la aparición de : en la cadena, quedando 
  // Datos como ' Texto cualquiera'
  Delete(Datos, 1, Pos(':', Datos))
  // Lo que quieras hacer con Datos
end

Espero que esto te sirva para darte una idea...



Saludos...

ZayDun 27-03-2007 21:17:42

Solucionado....
 
Muchas gracias maeyanes!!!

es justo lo que necesitaba, me estaba volviendo loco con DELETE pero no encontraba la manera, gracias de nuevo! :cool:

maeyanes 27-03-2007 21:20:58

De nada... :D

Que para eso estamos... ;)


La franja horaria es GMT +2. Ahora son las 08:03:06.

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