Regex,两个html标记之间的所有内容vb.net

Regex,两个html标记之间的所有内容vb.net,vb.net,Vb.net,我试图通过VisualBasic2010上的regex获取一些网页信息 是这样的: <SPAN CLASS="clear"></SPAN> <h2> blabla </h2> <h2> blabla </h2> <b> blabla </b> etc etc <SPAN CLASS="clear"></SPAN> 布拉布拉 布拉布拉 布拉布拉 等等 我想要的是两人之间

我试图通过VisualBasic2010上的regex获取一些网页信息

是这样的:

<SPAN CLASS="clear"></SPAN>
<h2> blabla </h2>
<h2> blabla </h2>
<b> blabla </b>

etc etc

<SPAN CLASS="clear"></SPAN>

布拉布拉
布拉布拉
布拉布拉
等等
我想要的是两人之间的一切 还有h2标记和其他存在的html标记

这可能吗


我已经试过了。而且\w*但它不会返回任何东西…

可能最好使用XML解析器,但我假设它是一次性的或类似的

如果我理解正确,这将获得标签之间的所有数据:

Dim regex As New Text.RegularExpressions.Regex("<.*?>", RegexOptions.Singleline)
Dim result As String = regex.Replace(yourHtml, String.Empty)
Dim regex作为新文本.RegularExpressions.regex(“,RegexOptions.Singleline)
Dim结果为String=regex.Replace(您的HTML,String.Empty)
您可以使用它仅获取H2标记和数据:

Dim regex As New Text.RegularExpressions.Regex("<\s*h2[^>]*>(.*?)<\s*/\s*h2>", RegexOptions.Singleline)
Dim results As New Text.StringBuilder
For Each m As Text.RegularExpressions.Match In regex.Matches(yourHtml)
    results.Append(m.Value)
Next
Dim regex作为新文本.RegularExpressions.regex(“]*>(.*)”,RegexOptions.Singleline)
将结果变暗为新的Text.StringBuilder
对于regex.Matches(yourHtml)中的每个m As Text.RegularExpressions.Match
结果。追加(m.Value)
下一个

阿伦迪已经有了很好的答案,不过你也可以试试这个

Dim findtext2 As String = "(?<=<h2>)(.*?)(?=</h2>)"
Dim myregex2 As String = TextBox1.Text 'Your HTML code
Dim doregex2 As MatchCollection = Regex.Matches(myregex2, findtext2)
Dim matches2 As String = ""
For Each match2 As Match In doregex2
    matches2 = matches2 + match2.ToString + Environment.NewLine
Next
MsgBox(matches2) 'Results

Dim findtext2 As String=“(?我认为您不需要使用正则表达式,但在代码中使用XMlReader。