Vb.net 如何在Visualbasic.net中通过字符串搜索特定的超链接?

Vb.net 如何在Visualbasic.net中通过字符串搜索特定的超链接?,vb.net,string,Vb.net,String,我编写了一个程序,可以下载网页的源代码,但现在我想搜索源代码中的特定链接,我知道该链接是这样写的: <a href="/internet/A2/"><b>Geographical Survey Work</b></a> 所以,为了澄清,我想在输入框中键入“地理调查工作”和“/internet/A2”以在消息框中弹出?我认为可以使用正则表达式来完成,但这有点超出我的理解范围。任何帮助都会很好。使用HTMLAgilityPack: Dim vsPag

我编写了一个程序,可以下载网页的源代码,但现在我想搜索源代码中的特定链接,我知道该链接是这样写的:

<a href="/internet/A2/"><b>Geographical Survey Work</b></a>
所以,为了澄清,我想在输入框中键入“地理调查工作”和“/internet/A2”以在消息框中弹出?我认为可以使用正则表达式来完成,但这有点超出我的理解范围。任何帮助都会很好。

使用HTMLAgilityPack:

Dim vsPageHTML As String = "<html>... your webpage HTML code ...</html>"
Dim voHTMLDoc.LoadHtml(vsPageHTML) : vsPageHTML = ""
Dim vsURI As String = ""
Dim voNodes As HtmlAgilityPack.HtmlNodeCollection = voHTMLDoc.SelectNodes("//a[@href]")
If Not IsNothing(voNodes) Then
    For Each voNode As HtmlAgilityPack.HtmlNode In voNodes
        If voNode.innerHTML.toLower() = "<b>geographical survey work</b>" Then
            vsURI = voNode.GetAttributeValue("href", "")
            Exit For
        End If
    Next
End If
voNodes = Nothing : voHTMLDoc = Nothing
Dim vsPageHTML As String=“…您的网页HTML代码…”
Dim voHTMLDoc.LoadHtml(vsPageHTML):vsPageHTML=“”
Dim vsURI为字符串=“”
将voNodes设置为HtmlAgilityPack.HtmlNodeCollection=voHTMLDoc.SelectNodes(“//a[@href]”)
如果不是Nothing(voNodes),则
对于每个voNode,在voNodes中作为HtmlAgilityPack.HtmlNode
如果voNode.innerHTML.toLower()=“地理测量工作”,则
vsURI=voNode.GetAttributeValue(“href”,“”)
退出
如果结束
下一个
如果结束
voNodes=Nothing:voHTMLDoc=Nothing
用vsURI做任何你想做的事情。
在我自由编写时,您可能需要稍微调整代码。

您可以使用HtmlAgilityPack API。不要使用正则表达式解析htmlrelated:
Dim vsPageHTML As String = "<html>... your webpage HTML code ...</html>"
Dim voHTMLDoc.LoadHtml(vsPageHTML) : vsPageHTML = ""
Dim vsURI As String = ""
Dim voNodes As HtmlAgilityPack.HtmlNodeCollection = voHTMLDoc.SelectNodes("//a[@href]")
If Not IsNothing(voNodes) Then
    For Each voNode As HtmlAgilityPack.HtmlNode In voNodes
        If voNode.innerHTML.toLower() = "<b>geographical survey work</b>" Then
            vsURI = voNode.GetAttributeValue("href", "")
            Exit For
        End If
    Next
End If
voNodes = Nothing : voHTMLDoc = Nothing