2011-08-26 37 views
0

这是我的尝试:撷取网址的段,在地址栏中

string myURL= "http://mysite.com/articles/healthrelated"; 
String idStr = myURL.Substring(myURL.LastIndexOf('/') + 1); 

我需要获取“健康相关”,即在URL中的最后一个斜线之后的文本。现在的问题是,我的网址也可能是这样的:

"http://mysite.com/articles/healthrelated/" 

即在该文本结尾处的“斜线”。现在,最后一个斜线变成一前一后“健康相关”等,结果我得到使用

String idStr = myURL.Substring(myURL.LastIndexOf('/') + 1); 

为空字符串..

应我的代码是什么样子,所以我总是得到的文本“健康相关的”无不管最后是否有斜线,这都很重要。我只需要以某种方式获取文本。

回答

3

试试这个。

var lastSegment = url 
    .Split(new string[]{"/"}, StringSplitOptions.RemoveEmptyEntries) 
    .ToList() 
    .Last(); 
+1

+1究竟是什么我是谁thnking的 – Tigran

0

你可以在这种情况下做的要么使用正则表达式(这我不是专家,但我在这里是舒尔其他ppl;))或简单:

string[] urlParts = myURL.Split('/'); 

并采取此数组中的最后一个字符串。