string referrer = "?404;http://stage.hello.com:80/Applications/";
referrer = referrer.Substring(referrer.LastIndexOf("/") + 1);
通过这样做,我得到推荐人值""
作为答案。
我希望我的推荐人值为"应用程序/"
我怎样才能做到这一点?
非常感谢任何帮助。
答案 0 :(得分:5)
referrer = referrer.Substring(referrer.Substring(0, referrer.LastIndexOf("/")).LastIndexOf("/") + 1);
答案 1 :(得分:2)
第一个变种:
referrer = Regex.Match(referrer, @"(?!/)[^/]*/[^/]*$").Value;
第二种变体:
referrer = string.Join("/", referrer.Split('/').Reverse().Take(2).Reverse());
答案 2 :(得分:2)
不安全的变体(如果您确定字符串中至少出现了2个值)将是这样的
string referrer = "?404;http://stage.hello.com:80/Applications/";
referrer = referrer.Substring(referrer.LastIndexOf("/", referrer.LastIndexOf("/") - 1) + 1);
安全版本就像这样
int lastIndex = referrer.LastIndexOf("/");
int secondLastIndex = lastIndex > 0 ? referrer.LastIndexOf("/", lastIndex - 1) : -1;
if (secondLastIndex >= 0)
{
// ...
}
else
{
// ...
}