2012-04-10 4 views
1

Ich habe eine sehr lange Zeichenfolge, die Querystrings und einige reguläre Site-URLs enthält. es sieht so etwas wieRegulärer Ausdruck, um die Basis-URL zu erhalten

http://www.mysite.com/site/site?pageId=1234&otherId=4321 

Ich mag würde nur die http://www.mysite.com aus dieser Zeichenfolge erhalten. Ich denke, vielleicht ein regulärer Ausdruck könnte den Trick, aber ich bin nicht bereit, etwas davon zu schreiben :) so könnte ich Hilfe bekommen?

EDIT
Ich brauche eine Lösung, so kann ich url String übergeben und die Basis-URL aus, dass bekommen. Nicht meine aktuelle Url

danke Jungs, schätze es wie immer.

Antwort

2

Bitte versuchen Sie dies:

string uri = Request.Url.GetLeftPart(UriPartial.Authority); 

Sie können mit auch dies überprüfen:

var url = new Uri("http://www.mysite.com/site/site?pageId=1234&otherId=4321"); 
string uri = url.GetLeftPart(UriPartial.Authority); 
+0

Ich kann diese verwenden. Es ist eine Zeichenfolge, die URLs wie .se, .co.uk usw. mit dieser vollständigen URL generiert. Also bekomme ich nicht die aktuelle URL –

+0

Means ..? Ich bekomme nicht, was Sie sagen .. @ Dejan.S –

+0

Haben Sie mit diesem versucht, weil dies die Arbeitslösung ist .. Ich habe meine Antwort für Ihre Klarstellung aktualisiert @ Dejan.S –

0

Lösung

var url = new Uri("http://www.mydomain.com/Site/Subsite?page=site"); 
var baseUrl = url.Host; 
+0

Dies wird Ihnen "www.mydomain.com" nicht "http: // www.mydomain.com" –

+0

ja, aber ich kann das http: // hinzufügen, mit der Lösung, die Sie haben, kann ich nicht in einer URL übergeben? –

+0

Dann müssen Sie Ihre Frage aktualisieren, weil Sie etwas anderes mit der Frage erwarten, die Sie gepostet haben. –