如何使用正则表达式从URL格式获取计算机名称,协议和端口号?

时间:2015-05-14 10:49:47

标签: c# regex powershell

从URL格式,如何使用powershell获取协议,计算机名称和端口号。

此页面fetch protocol and port number使用C#。但我也希望知道机器名称并需要使用powershell。

1 个答案:

答案 0 :(得分:3)

你可以使用:

$a = [System.Uri]"http://www.contoso.com:8080/letters/readme.html"

然后:

$a | fl *

AbsolutePath   : /letters/readme.html
AbsoluteUri    : http://www.contoso.com:8080/letters/readme.html
LocalPath      : /letters/readme.html
Authority      : www.contoso.com:8080
HostNameType   : Dns
IsDefaultPort  : False
IsFile         : False
IsLoopback     : False
PathAndQuery   : /letters/readme.html
Segments       : {/, letters/, readme.html}
IsUnc          : False
Host           : www.contoso.com
Port           : 8080
Query          : 
Fragment       : 
Scheme         : http
OriginalString : http://www.contoso.com:8080/letters/readme.html
DnsSafeHost    : www.contoso.com
IsAbsoluteUri  : True
UserEscaped    : Fa

因此协议Http由:

给出
$a.Scheme