【问题标题】:Get last path from URL从 URL 获取最后一个路径
【发布时间】:2019-07-24 21:59:23
【问题描述】:

我的 c# 应用中有 Url,例如:https://www.instagram.com/testtesttest/

我想从中获取最后一个路径组件:testtesttest

我正在使用此代码:

public static String GetUserNameInstagramUrl(String url)
{
    Uri uri = new Uri(url);
    return uri.Segments.Last();;
}

不幸的是,我最终得到了/ 的最后一条路径。 有什么方法可以在不自己删除/的情况下获取最后一条路径?

【问题讨论】:

  • url.Trim('/') ?
  • @David 我想要一些更通用的东西,对于更多种类的字符串来说是动态的。
  • 把最后一行改成这样:return uri.Segments.Last().Trim('/');
  • 不,如果 API 没有提供您需要的东西,那么您还有一些工作要做。
  • 当您寻找更通用的方式时,这可能意味着您还想处理一些其他输入情况。您能否分享一些其他输入和预期输出?例如,以下输入https://example.comhttps://example.com/ahttps://example.com/a/https://example.com/a/bhttps://example.com/a/b/c.d 的输出是什么? uri 也可能有查询字符串。如果 uri 中有查询字符串,在以前的情况下,预期的结果是什么?

标签: c# winforms url


【解决方案1】:

只需在最后做 TrimEnd

public static String GetUserNameInstagramUrl(String url)
{
    Uri uri = new Uri(url);
    return uri.Segments.Last().TrimEnd('/');
}

【讨论】:

    【解决方案2】:

    我认为你必须修剪最后的“/”

    public static string GetUserNameInstagramUrl(string url)
                {
                    Uri uri = new Uri(url);            
                    return uri.Segments.Last().TrimEnd('/');
                }
    

    【讨论】:

    • 它与其他答案有何不同?
    猜你喜欢
    • 2020-04-13
    • 1970-01-01
    • 1970-01-01
    • 2011-09-20
    • 2012-11-30
    • 1970-01-01
    • 2012-12-26
    • 2012-04-15
    • 2023-03-22
    相关资源
    最近更新 更多