Как лучше удалить все знаки после имени домена в URLe - C#
Формулировка задачи:
Здравствуйте, подскажите пожалуйста, как лучше удалить все знаки после имени домена в URLe, а то мой вариант получился каким-то дубовым:
public String parseURL(String url)
{
if (url.Length > 8)
return url.Remove(url.IndexOf("/", 8));
else
return url;
}
Вверх!
Решение задачи: «Как лучше удалить все знаки после имени домена в URLe»
textual
Листинг программы
/*
** Method 1 (using the build-in Uri-object)
*/
public static string ExtractDomainNameFromURL_Method1(string Url)
{
if (!Url.Contains("://"))
Url = "http://" + Url;
return new Uri(Url).Host;
}
/*
** Method 2 (using string modifiers)
*/
public static string ExtractDomainNameFromURL_Method2(string Url)
{
if (Url.Contains(@"://"))
Url = Url.Split(new string[] { "://" }, 2, StringSplitOptions.None)[1];
return Url.Split('/')[0];
}
/*
** Method 3 (using regular expressions -> slowest)
*/
public static string ExtractDomainNameFromURL_Method3(string Url)
{
return System.Text.RegularExpressions.Regex.Replace(
Url,
@"^([a-zA-Z]+:\/\/)?([^\/]+)\/.*?$",
"$2"
);
}