Visual Basic多个正则表达式插入DataGridView

时间:2016-02-14 15:47:58

标签: regex vb.net datagridview

以下是我正在处理的一个小型网页编写项目的代码的一部分。我在将第二个正则表达式的值插入数据网格时遇到问题,并让它们与第一个正则表达式的值对齐。每个页面都有一个包含十个项目的列表,每个项目都有一个唯一的ID以及格式和评级。运行代码时,它只将formatID数据添加到前十行。

  Dim r As New System.Text.RegularExpressions.Regex("<div id=""R.*"" class=""a-section review"">")
        Dim Matches As MatchCollection = r.Matches(SourceCode)
        For Each ItemID As Match In Matches

            DataGridView1.Rows.Add("", Split(ItemID.Value, """").GetValue(1), AsinTextBox.Text, "", "", "", "")

        Next


        Dim R2 As New System.Text.RegularExpressions.Regex("<a class=""a-size-mini a-link-normal a-color-secondary"" href=""/.*/product-reviews/.*/ref=.*"">.*</a>")
        Dim Matches2 As MatchCollection = R2.Matches(SourceCode)
        Dim Z2
        Dim i As Integer = 0
            For Each FormatID As Match In Matches2

                i = i + 1
                Z2 = Split(FormatID.Value, ">").GetValue(1)
                Z2 = Split(Z2, "<").GetValue(0)
                DataGridView1.Rows(i).Cells(5).Value = (Z2)

            Next

1 个答案:

答案 0 :(得分:0)

我明白了。我没有进行多次正则表达式搜索,而是做了一个更大的搜索,其中包含了我之前尝试做的所有三个搜索。之前的三个正则表达式搜索都是一大段html的一部分,在我搜索之后,我使用了split函数来获得Z2的正确值。