大家好,有人可以向我解释为什么他的vblf角色一直在我的字符串中吗?我使用这段代码,所以我不必检查http://是否已经存在于带有'if'的字符串中
url1 = "http://" + URL.replace("http://","").Split("/")(0) & strin2
问题是结果url是这样的: “http://”& vblf& '其余的网址 任何人都可以向我解释为什么vblf一直在我的字符串中?
答案 0 :(得分:1)
我真的会使用正确的工具来完成Uri
class的工作:
Dim url As String = "http://google.com/blah?foo=1"
Dim uri As Uri
If Uri.TryCreate(url, UriKind.Absolute, uri) Then
Dim schemeAndHost As String = uri.Scheme + uri.SchemeDelimiter + uri.Host
End If
结果:http://google.com
如果您不知道网址是否包含协议,您可以使用UriBuilder
类:
Dim url As String = "google.com/blah?foo=1"
Dim schemeAndHost As String
Dim uri As Uri = Nothing
If uri.TryCreate(url, UriKind.Absolute, uri) Then
schemeAndHost = uri.Scheme + uri.SchemeDelimiter + uri.Host
ElseIf url.Contains("/") Then
uri = New UriBuilder("http", url.Remove(url.IndexOf("/"))).Uri
schemeAndHost = uri.Scheme + uri.SchemeDelimiter + uri.Host
End If
(同样的结果)