C# 共享路径的正则表达式

C# 共享路径的正则表达式,c#,regex,C#,Regex,我对服务器路径的正则表达式有问题。我有许多路径,它们可以区分如下: \\server1\folder\file 或 我需要得到它的服务器名,只有服务器名。我试过使用 [\\(.*?)\\] 这与我想要的相反,而且是多个部分,而不仅仅是服务器名称。正确的表达式是什么?此正则表达式匹配\和第一个\之间的所有内容: (?<=\\\\)[^\\]* (?\(.*?\)将捕获两个\.字符串主机=新Uri(@“\\server2\folder\subfolder\file”)之间的第一个短语.H

我对服务器路径的正则表达式有问题。我有许多路径,它们可以区分如下:

\\server1\folder\file

我需要得到它的服务器名,只有服务器名。我试过使用

[\\(.*?)\\]

这与我想要的相反,而且是多个部分,而不仅仅是服务器名称。正确的表达式是什么?

此正则表达式匹配
\
和第一个
\
之间的所有内容:

(?<=\\\\)[^\\]*

(?\(.*?\)将捕获两个\.
字符串主机=新Uri(@“\\server2\folder\subfolder\file”)之间的第一个短语.Host;
@AlexK。谢谢,Thank是一个更干净的解决方案,可以在更大范围内实现,如我希望实现的。Alex的答案是最好的,但为了完整性,我认为您需要的正则表达式是
(?可以使用字符串拆分:字符串输入=@“\\server2\folder\subfolder\file”;字符串输出=输入。拆分(新字符[]{'\'},StringSplitOptions.RemoveEmptyEntries.FirstOrDefault();
(?<=\\\\)[^\\]*