我有一个网址是这样的:https://www.example.com/oauth/connect/token我只想得到https://www.example.com,我已经尝试了很多方法来得到它,但是我尝试过的所有方法都要求我硬编码多个/。示例:$Url.Split('/')[0] + "//" + $url.split('/')[2]有没有不使用编码的方法?
https://www.example.com/oauth/connect/token
https://www.example.com
/
$Url.Split('/')[0] + "//" + $url.split('/')[2]
yqhsw0fo1#
您可以使用[System.Uri]将字符串“强制转换”为System.Uri类。
[System.Uri]
System.Uri
$url = [System.Uri]"https://www.example.com/oauth/connect/token"
然后,您可以使用host和scheme获取所需的URL部分。
host
scheme
$result = $url.Scheme, $url.Host -join "://"
您还可以从整个URL中删除AbsolutePath。
AbsolutePath
$url = [System.Uri]"https://www.example.com/oauth/connect/token" $result = $url.AbsoluteUri.Replace($url.AbsolutePath, "")
以下是System.Uri示例将具有的属性的完整列表:
AbsolutePath : /oauth/connect/token AbsoluteUri : https://www.example.com/oauth/connect/token LocalPath : /oauth/connect/token Authority : www.example.com HostNameType : Dns IsDefaultPort : True IsFile : False IsLoopback : False PathAndQuery : /oauth/connect/token Segments : {/, oauth/, connect/, token} IsUnc : False Host : www.example.com Port : 443 Query : Fragment : Scheme : https OriginalString : https://www.example.com/oauth/connect/token DnsSafeHost : www.example.com IdnHost : www.example.com IsAbsoluteUri : True UserEscaped : False UserInfo :
1条答案
按热度按时间yqhsw0fo1#
您可以使用
[System.Uri]
将字符串“强制转换”为System.Uri
类。然后,您可以使用
host
和scheme
获取所需的URL部分。您还可以从整个URL中删除
AbsolutePath
。以下是
System.Uri
示例将具有的属性的完整列表: