Sample code for 30+ languages & platforms
Delphi DLL

Parse a URL into its Component Parts

See more HTTP Examples

Demonstrates how to parse a URL into it's component parts.

Chilkat Delphi DLL Downloads

Delphi DLL
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Url;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
url: HCkUrl;
urlStr: PWideChar;

begin
success := False;

url := CkUrl_Create();

urlStr := 'https://www.amazon.com/Anarchy-State-Utopia-Robert-Nozick/dp/0465051006/ref=sr_1_1?s=books&ie=UTF8&qid=1430344305&sr=1-1&keywords=nozick#frag123';

success := CkUrl_ParseUrl(url,urlStr);
// Assume success..

Memo1.Lines.Add('URL: ' + urlStr);
Memo1.Lines.Add('Host: ' + CkUrl__host(url));
Memo1.Lines.Add('Port: ' + IntToStr(CkUrl_getPort(url)));
Memo1.Lines.Add('HostType: ' + CkUrl__hostType(url));
Memo1.Lines.Add('Ssl: ' + IntToStr(Ord(CkUrl_getSsl(url))));
Memo1.Lines.Add('Path: ' + CkUrl__path(url));
Memo1.Lines.Add('Query: ' + CkUrl__query(url));
Memo1.Lines.Add('Frag: ' + CkUrl__frag(url));
Memo1.Lines.Add('----');

urlStr := 'http://matt:secret@www.chilkatsoft.com:8080/somepath.asp?test=123&size=2';

success := CkUrl_ParseUrl(url,urlStr);
// Assume success..

Memo1.Lines.Add('URL: ' + urlStr);
Memo1.Lines.Add('Host: ' + CkUrl__host(url));
Memo1.Lines.Add('Port: ' + IntToStr(CkUrl_getPort(url)));
Memo1.Lines.Add('HostType: ' + CkUrl__hostType(url));
Memo1.Lines.Add('Ssl: ' + IntToStr(Ord(CkUrl_getSsl(url))));
Memo1.Lines.Add('Login: ' + CkUrl__login(url));
Memo1.Lines.Add('Password: ' + CkUrl__password(url));
Memo1.Lines.Add('Path: ' + CkUrl__path(url));
Memo1.Lines.Add('Query: ' + CkUrl__query(url));
Memo1.Lines.Add('Frag: ' + CkUrl__frag(url));

CkUrl_Dispose(url);

end;