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