我有一个文本框和一个按钮,当我在文本框中输入一个单词并单击按钮时,它会在当前网页上找到该单词。
我试过这个,有时它有效,有时它不用,我也想知道如何在文本框中搜索“下一个”单词,通常它只搜索输入的第一个单词。
这是我的代码:
dim wb as webbrowser
if wb.documenttext.contains(textbox.text) then
msgbox("YES")
else
msgbox("NO")
它确实找到了一些词,但大部分时间都找不到。
答案 0 :(得分:0)
您可以尝试这样做:
If wb.DocumentText.ToLower.Contains(TextBox1.Text.ToLower) Then
'...
End If
或者你可以尝试循环遍历所有元素,如下所示:
Private Function HasTextInNode(ByVal elem As HtmlElement, ByVal txt As String) As Integer
Dim iResult As Integer = 0
If elem.Children.Count > 0 Then
For Each child As HtmlElement In elem.Children
iResult += HasTextInNode(child, txt)
Next
ElseIf elem.InnerText <> Nothing AndAlso elem.InnerText.ToLower.Contains(txt.ToLower) Then
iResult += elem.InnerText.ToLower.Split(txt.ToLower).Length - 1
End If
Return iResult
End Function
这种情况下,函数返回网页中的元素数量,但很容易修改。希望它有所帮助。