Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 从地址栏搜索web_Vb.net_Url_Search_Browser - Fatal编程技术网

Vb.net 从地址栏搜索web

Vb.net 从地址栏搜索web,vb.net,url,search,browser,Vb.net,Url,Search,Browser,在我的WebBrowser上,我当然有一个地址栏,但我只能在地址栏中搜索URL,比如“facebook.com”之类的。我希望我的地址栏能够像搜索引擎一样工作,所以当我像www.facebook.com那样键入时,我会转到facebook.com,当我像facebook一样搜索时,没有www或.com,或者我希望我的地址栏将我重定向到的东西,如果你知道我的意思的话 也许这不是最好的方法,但它确实有效。 你唯一需要做的就是向数组中添加更多内容,使其更加完美。“因为有更多可能的web url结尾和开

在我的WebBrowser上,我当然有一个地址栏,但我只能在地址栏中搜索URL,比如“facebook.com”之类的。我希望我的地址栏能够像搜索引擎一样工作,所以当我像www.facebook.com那样键入时,我会转到facebook.com,当我像facebook一样搜索时,没有www或.com,或者我希望我的地址栏将我重定向到的东西,如果你知道我的意思的话

也许这不是最好的方法,但它确实有效。

你唯一需要做的就是向数组中添加更多内容,使其更加完美。“因为有更多可能的web url结尾和开头”
Dim CheckArrStart()
Dim CheckArrEnd()

我将创建一个函数来检查在地址栏中输入的url。
私有函数CheckWebPageLink(ByVal链接为字符串)为布尔值

在这个函数中,我将为每个循环使用2个循环来检查url末尾的开始。
如果我找到一个开始,我将+1到我的ok dim“dim ok As Integer=0”,并将其从字符串中删除
然后转到下一个for each循环以查找url结尾。
因此,如果a在我的ok dim中找到一个end+1,并从字符串中删除该end。 我这样做是因为我想检查字符串的末尾有多长,因为www.and.com之间一定有某种东西

然后在我的函数结束时,我检查ok dim的值是否为2,以及链接没有开始和结束的时间有多长。
如果为true,则返回true布尔值;如果为false,则返回false布尔值。

然后在我的导航按钮中,我执行一个if语句结束检查函数中的booblean是真是假。“if checkWebagelink(ToolStripTextBox1.Text.ToLower)=真然后”
如果为true,则导航到url;如果为false:
WebBrowser1.导航(“&ToolStripTextBox1.Text)

正如我已经说过的,您仍然需要修复阵列,我只是添加了一些以进行测试

Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click

    If CheckWebPageLink(ToolStripTextBox1.Text.ToLower) = True Then
        WebBrowser1.Navigate(ToolStripTextBox1.Text)
    Else
        WebBrowser1.Navigate("https://www.google.com/?gws_rd=ssl#q=" & ToolStripTextBox1.Text)
    End If

End Sub

Private Function CheckWebPageLink(ByVal Link As String) As Boolean

    Dim CheckArrStart() As String = ({"http://www.", "https://www.", "www."})
    Dim CheckArrEnd() As String = ({".se", ".nl", ".com", ".cu", ".tk"})
    Dim Ok As Integer = 0

    For Each LinkStart As String In CheckArrStart
        If Link.Contains(LinkStart) Then
            Link = Replace(Link, LinkStart, "")
            Ok = Ok + 1
            For Each LinkEnd As String In CheckArrEnd
                If Link.Contains(LinkEnd) Then
                    Link = Replace(Link, LinkEnd, "")
                    Ok = Ok + 1
                    Exit For
                End If
            Next
            Exit For
        End If
    Next

    If Ok = 2 And Link.Count > 2 Then
        Return True
    Else
        Return False
    End If

End Function

您可以尝试使用此函数::

Private Function CheckURL(ByVal UrlText As String)
    Dim URL As New Uri(UrlText)
    Dim Req As System.Net.WebRequest
    Req = System.Net.WebRequest.Create(URL)
    Dim Resp As System.Net.WebResponse

    Try
        Resp = Req.GetResponse()
        Resp.Close()
        Req = Nothing
        Return True
    Catch ex As Exception
        Req = Nothing
        Return False
    End Try
End Function
.