C# 拆分字符串,使其丢失http://和';之后的任何内容';

C# 拆分字符串,使其丢失http://和';之后的任何内容';,c#,url,split,C#,Url,Split,我需要解析一个url,这样只有我的服务器显示“NA30”,但是当我进行拆分时,我似乎不能只得到NA30。我尝试过使用“.”和“/”进行修剪,我想我只是弄错了阵列部分。有什么指导吗 链接 我目前正在做什么 string thisUrl; if (Helper.InstanceUrl.Contains(@"://")) { thisUrl = Helper.InstanceUrl.Split(new[] { "://" }, 2, StringSplitOp

我需要解析一个url,这样只有我的服务器显示“NA30”,但是当我进行拆分时,我似乎不能只得到NA30。我尝试过使用“.”和“/”进行修剪,我想我只是弄错了阵列部分。有什么指导吗

链接

我目前正在做什么

    string thisUrl;
    if (Helper.InstanceUrl.Contains(@"://"))
    {
        thisUrl = Helper.InstanceUrl.Split(new[] { "://" }, 2, StringSplitOptions.None)[1];
            return thisUrl.Split('/')[0].Split('.')[0];
    }
    return "";

您可以使用正则表达式仅保留域的第一部分

Regex.Match(url,@/([^\.]+))).Groups[1]。Value


您还可以使用Uri类找到字符串

Uri u = new Uri("https://na30.salesforce.com");
Console.WriteLine(u.Host.Split('.')[0]);

值得一读的问题是

该死,你比我强。我要做完全相同的事情,甚至是可变的名字…正是我需要的,比我想出的更干净!!谢谢我建议的一点改进是:检查它是否以www开头,如果是,则返回数组的第一项。您不必在字符类内划定句点。从外观上看,您已经有了答案,但我仍然好奇您遇到了什么问题?我尝试了你的代码,它为我返回“na30”。如果有不同的问题,这里的答案可能不是你需要的。