我是新的C#根域,檢查它是否在字符串
可以說我有一個字符串
string testurl = "http://www.mytestsite.com/hello";
if (test url == root domain) {
// do something
}
我要檢查,如果該字符串「testurl」是根域即http://www.mytestsite.com或http://mytestsite.com等。
謝謝。
我是新的C#根域,檢查它是否在字符串
可以說我有一個字符串
string testurl = "http://www.mytestsite.com/hello";
if (test url == root domain) {
// do something
}
我要檢查,如果該字符串「testurl」是根域即http://www.mytestsite.com或http://mytestsite.com等。
謝謝。
你可以嘗試這樣的:
string testurl = "http://www.mytestsite.com/hello"
if (GetDomain.GetDomainFromUrl(testurl) == rootdomain) {
// do something
}
string testurl = "http://www.mytestsite.com/hello";
string prefix = testurl.Split(new String[] { "//" })[0] + "//";
string url = testurl.Replace(prefix, "");
string root = prefix + url.Split("/")[0];
if (testurl == root) {
// do something
}
使用Uri
類:
var testUrl = new Uri("http://www.mytestsite.com/hello");
if (testUrl.AbsolutePath== "/")
{
Console.WriteLine("At root");
}
else
{
Console.WriteLine("Not at root");
}
與可能需要的任何正常化問題很好的交易(如治療http://www.mytestsite.com
和http://www.mytestsite.com/
的相同)
您也可以嘗試使用URI.HostName屬性
以下示例將服務器的主機名(www.contoso.com)寫入控制檯。
Uri baseUri = new Uri("http://www.contoso.com:8080/");
Uri myUri = new Uri(baseUri, "shownew.htm?date=today");
Console.WriteLine(myUri.Host);
如果返回的主機名等於「http://mytestsite.com」,則表示完成。
您可能打算使用double-equals ==進行比較。在基於C的語言中,single-equals =運算符用於賦值語句,而不是比較。這將是'如果(testurl == rootdomain)'。 –