1

クエリ文字列といくつかの通常のサイト URL を含む非常に長い文字列を取得しました。それは次のように見えます

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

この文字列からだけを取得したいと思いhttp://www.mysite.comます。正規表現でうまくいくかもしれないと思っていますが、それを書く資格はありません:)それで、助けを得ることができますか?

編集
URL文字列を渡してそこからベースURLを取得できるように、解決策が必要です。現在の URL ではありません

みんなありがとう、いつものように感謝します。

4

3 に答える 3

2

これを試してください:

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

これでも確認できます:

var url = new Uri("http://www.mysite.com/site/site?pageId=1234&otherId=4321");
string uri = url.GetLeftPart(UriPartial.Authority);
于 2012-04-10T09:48:49.580 に答える
0

解決

var url = new Uri("http://www.mydomain.com/Site/Subsite?page=site");
var baseUrl = url.Host;
于 2012-04-10T10:10:14.053 に答える
0

著者が正規表現を求めたので、それだけです:

 static string ExtractBaseUrl(string url)
        {
            Regex regex = new Regex(@"^https?:\/\/[^\/]+");
            Match resultm = regex.Match(url);
            if (resultm.Success)
            return resultm.Groups[0].Value;
            else return null;
        }
于 2020-10-26T12:38:34.820 に答える