Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Obtener la url de Tedit especifica Delphi (https://www.clubdelphi.com/foros/showthread.php?t=85351)

force1758 06-03-2014 13:48:17

Obtener la url de Tedit especifica Delphi
 
Hola Compañeros del foro vengo de nuevo a pedir un poco de ayuda para resolver este problema que me esta volviendo casi loco por que no consigo la manera para realizar los correctamente espero que me entienda lo que quiero hacer y así me echen una mano se los agradecería

Bueno lo que estoy tratando de hacer es que mi programa detecte la url del navegador FIREFOX y la coloque en un edit, cosa que ya logre hacerlo pero yo quiero crear una función o cualquier cosa que me busque dentro de esa cadena la pagina exacta de esa url, no se si me explique bien pero por

ejemplo:
esta son URL que saque de firefox: http://www.clubdelphi.com/foros/showthread.php?t=71603 , http://www.delphibasics.co.uk/RTL.asp?Name=Pos ,http://delphiallimite.blogspot.com/2007/08/operaciones-con-cadenas-de-texto-iv.html , https://www.google.co.ve/search?q=buscar+caracter+en+cadena+delphi , solo quiero colocar en otro edit en este caso seria edit2 la pagina sola, http://www.clubdelphi.com---> sin esto que sigue /foros/showthread.php?t=71603 , espero me entiendan lo que trato de hacer y me puedan ayudar

Gracias Saludos

duilioisola 06-03-2014 14:42:25

En la dirección tienes tres partes:
protocolo: http://
dominio: www.clubdelphi.com
resto: ruta/parametros, etc. /foros/...

Solo debes dividir la cadena en esas tres partes y tomar la que quieras.
Primero debes ver si contiene el protocolo o no. (si empieza por http:// o https:// o ftp:// o cualquier cosa antes de '//')
Luego tomas la cadena a partir de allí y hasta la próxima barra, sin incluirla.
El resto de la cadena es lo que queda...

Espero haberte ayudado un poco.

duilioisola 06-03-2014 14:44:04

Mira está página para más información: http://stackoverflow.com/questions/1...arse-a-web-url

force1758 06-03-2014 15:17:07

Cita:

Empezado por duilioisola (Mensaje 473358)
Mira está página para más información: http://stackoverflow.com/questions/1...arse-a-web-url


Gracia por la repuesta rápida pero no es lo que busco ya que la url que yo capto pueden cambiar el protocolo y alargarse mas la url pero creo que debe hacerse de una forma mas facil como dije solo me interesa desde http://www.clubdelphi.com/ resto no me interesa por que en si el captador obtiene la url completa gracias de todas forma si tienes otra manera de obtener lo que digo te lo agradeceria

duilioisola 06-03-2014 15:44:31

¿¿¿eng???

Si has hecho el "captador" que obtiene la dirección del navegador, solo tienes que "parsearla" (dividirla en sus partes) y luego presentarla en un TEdit o lo que necesites.

Código Delphi [-]
function ParteQueMeInteresa(UnaDireccion : string);
begin
   // Dividir
   // ParteProtocolo := ...
   // ParteParteDireccion := ...
   // ParteResto := ...

   Return := ParteDireccion;
end;

var
  Direccion : string;
begin
   Direccion := Captador.DameDireccionFirefox;
   Edit.Text := ParteQueMeInteresa(Direccion);  
end;

force1758 07-03-2014 01:43:41

Gracias pero no es lo que busco espero que alguien mas me de otra opcion

ecfisa 07-03-2014 03:33:19

Hola force1758.

Las opciones que te dió duilioisola te tendrían que servir perfectamente... Pero para sumar otra alternativa se me ocurre que podrías hacer:
Código Delphi [-]
uses StrUtils;

function ExtractHostName(const URLStr: string): string;
var
  p1, p2: Integer;
begin
  p1:= Pos('://', URLStr);
  p2:= PosEx('/', URLStr, p1+3);
  Result:= Copy(URLStr, p1+3, p2-(p1+3));
end;

Saludos :)

force1758 07-03-2014 03:40:08

Cita:

Empezado por ecfisa (Mensaje 473403)
Hola force1758.

Las opciones que te dió duilioisola te tendrían que servir perfectamente... Pero para sumar otra alternativa se me ocurre que podrías hacer:
Código Delphi [-]
uses StrUtils;

function ExtractHostName(const URLStr: string): string;
var
  p1, p2: Integer;
begin
  p1:= Pos('://', URLStr);
  p2:= PosEx('/', URLStr, p1+3);
  Result:= Copy(URLStr, p1+3, p2-(p1+3));
end;

Saludos :)



Muchísimas gracias ecfisa , me sirvió perfectamente tu ejemplo eso era lo que estaba buscando espero que le sirva a alguien mas

Saludo y gracias


La franja horaria es GMT +2. Ahora son las 03:48:14.

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