Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi ExtractServerName & ExtractServerPath (https://www.delphipraxis.net/114803-extractservername-extractserverpath.html)

argonix 31. Mai 2008 20:04


ExtractServerName & ExtractServerPath
 
Hallo!
Gibt es eine Funktion in Delphi z.B. ExtractServerName, die aus einer URL wie
http://www.delphipraxis.net/abc/cba/xy/test.pdf
folgendes extrahiert: www.delphipraxis.net
Und kann man auch den Dateipfad extrahieren, also aus
http://www.delphipraxis.net/abc/cba/xy/test.pdf
als Rückgabewert /abc/cba/xy/ erhalten?
Das kann man natürlich alles irgendwie selbst zusammenbauen, aber eine fertige Funktion ist natürlich schöner.

IceTube 31. Mai 2008 20:14

Re: ExtractServerName & ExtractServerPath
 
Hallo!

Du kannst das mit "Pos","Copy",etc. machen:

Servername:
Delphi-Quellcode:
//Beispiel URL
url := 'http://www.delphipraxis.net/posting.php?mode=reply&t=135759&sets=1212260794';

function GetServerName(url:string):string;
var p1,p2 : integer;
begin
//Lösche Http bzw. www
url := StringReplace(url,'http://','',[rfReplaceAll]);
url := StringReplace(url,'www.','',[rfReplaceAll]);
//
p1 := 1;
p2 := Pos('.',url);
//
Result := Copy(url,P1,(P2-1));
exit;
end;
Serverpath:
Delphi-Quellcode:
//Beispiel URL
url := 'http://www.delphipraxis.net/abc/cba/xy/test.pdf';

function GetServerPath(url:string):string;
var p1,p2 : integer;
begin
//Lösche ...
url := StringReplace(url,'http://','',[rfReplaceAll]);
url := StringReplace(url,'www.','',[rfReplaceAll]);
//
p1 := Pos('/',url);
p2 := Length(url);
//
Result := Copy(url,P1,P2);
exit;
end;
So sollte es gehen, habs nicht getestet...

lg

marabu 31. Mai 2008 20:15

Re: ExtractServerName & ExtractServerPath
 
Hallo Matthias,

vielleicht möchtest du ein wenig mit der Funktion CrackUrl() experimentieren.

Grüße vom marabu

sx2008 31. Mai 2008 20:17

Re: ExtractServerName & ExtractServerPath
 
Also eine URL in die Bestandteile zerlegen?
Schau mal in die Code-Library, Kategorie Internet, da gibt was dazu.

argonix 31. Mai 2008 20:21

Re: ExtractServerName & ExtractServerPath
 
Vielen Dank! Das hat mir viel Arbeit gespart!
@IceTube: Dein GetServerName kommt dummerweise nicht mit Namen wie z.B. abcde.fh.de klar.
So bekomme ich was ich will:
Delphi-Quellcode:
function GetServerName(url:string):string;
var p1,p2 : integer;
begin
url := StringReplace(url,'ftp://','',[rfReplaceAll]);
url := StringReplace(url,'http://','',[rfReplaceAll]);
p1 := 1;
p2 := Pos('/',url);
//
Result := Copy(url,P1,(P2-1));
end;
Vielen Dank nochmal!

Muetze1 31. Mai 2008 23:04

Re: ExtractServerName & ExtractServerPath
 
Marabu's Hinweise im Detail: InternetCrackURL()


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:40 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz