我正在寻找一种搜索这一系列信息的方法。
<a href="CLSID/70545-GoogleToolbar_32_dll.html">Google Side Bar</a></td><td>GoogleToolbar_32.dll</td>
我可以搜索关键字
<td>GoogleToolbar_32.dll</td>
从那里我需要得到短语&#34; CLSID / 70545-GoogleToolbar_32_dll.html&#34;。我的想法是向后搜索以找到下一个发生的&#34; a href&#34;,搜索到结束引号。但我无法弄清楚如何做到这一点。
答案 0 :(得分:0)
如果这是一次性的事情,或者你知道格式是一致的,你可以使用正则表达式。以下示例将按您的要求执行。这不是特别强大,但它适用于您的示例。正则表达式不是您通常用于解析标记语言的。正如Neolisk所说,您可能希望查看解析库。
Imports System.Text.RegularExpressions
Module Module1
Sub Main()
Dim html As String = "<html><body><table><tr><td><a href=""CLSID/70545-GoogleToolbar_32_dll.html"">Google Side Bar</a></td><td>GoogleToolbar_32.dll</td></tr></table></body></html>"
Debug.WriteLine(GetClsId(html))
End Sub
Function GetClsId(html As String) As String
Const rx As String = "<a href=""(?<clsid>.*)"">.*<td>GoogleToolbar_32.dll</td>"
Dim m As Match
m = Regex.Match(html, rx)
If m.Success Then
Return m.Groups.Item("clsid").Value
Else
Return Nothing
End If
End Function
End Module