我需要改进下面的方法。如何从URL中提取第一个文件夹?
这个想法是提取一个URL的第一个文件夹,如果它存在。这些网址可以带有或不带有域,也就是说,http://www.examplecom/es/test/test.aspx
,http://example.com/es/test/
或简称为/us/xxx/xxx.aspx
。
public string ExtractURL(string url)
{
string result = "";
try
{
string[] urlSplitted = url.Split("//".ToCharArray());
//si encontramos/
if (urlSplitted.Length > 0)
{
string strFin = urlSplitted[urlSplitted.GetUpperBound(0) - 1];
//comprobamos que exista algo
if (String.IsNullOrEmpty(strFin))
{
result = url;
}
else
{
//devuelvo la url hasta /ES o /EN
result = url.Substring(0,url.ToLower().IndexOf("/" +strFin.ToLower()));
}
}
else
{
result = url;
}
}
catch
{
result = "";
}
return result;
}
您还没有说过现在的方法有什么问题。什么不起作用? – TRiG 2013-11-26 18:11:24
想法是有更多的压缩,正则表达式总是很好 – netadictos 2013-11-26 22:10:29