Foxtable(狐表)用户栏目专家坐堂 → 如何从html文件中获取有用的数据?


  共有4193人关注过本帖树形打印复制链接

主题:如何从html文件中获取有用的数据?

帅哥哟,离线,有人找我吗?
y2287958
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4752 积分:34568 威望:0 精华:0 注册:2008/8/31 22:44:00
如何从html文件中获取有用的数据?  发帖心情 Post By:2013/10/7 9:27:00 [只看该作者]

以下是一段html内容摘录:
            </tr>
              <tr>
              <td align="center" rowspan="2" class="td_value">
期数
</td>
<td align="center" class="td_value">
计划
</td>
               <td align="center" class="td_value">
0<input type="hidden" name="tbReportSpec13model.r01c01" value="0">
</td>
               <td align="center" class="td_value">
0<input type="hidden" name="tbReportSpec13model.r01c02" value="0">
</td>
               <td align="center" class="td_value">
5<input type="hidden" name="tbReportSpec13model.r01c03" value="5">
</td>
               <td align="center" class="td_value">
1<input type="hidden" name="tbReportSpec13model.r01c04" value="1">
</td>
               <td align="center" class="td_value">
1<input type="hidden" name="tbReportSpec13model.r01c05" value="1">
</td>
               <td align="center" class="td_value">
0<input type="hidden" name="tbReportSpec13model.r01c06" value="0">
</td>
               <td align="center" class="td_value">
2<input type="hidden" name="tbReportSpec13model.r01c07" value="2">
</td>
<td align="center" class="td_value">
2<input type="hidden" name="tbReportSpec13model.r01c08" value="2">
</td>
               <td align="center" class="td_value">
1<input type="hidden" name="tbReportSpec13model.r01c09" value="1">
</td>
<td align="center" class="td_value">
0<input type="hidden" name="tbReportSpec13model.r01c10" value="0">
</td>
               <td align="center" class="td_value">
0<input type="hidden" name="tbReportSpec13model.r01c11" value="0">
</td>
              </tr>   
              <tr>

我要获取的数据是:期数,计划,0,0,5,1,1,0,2,2,1,0,0
我现在用的是文本替换的笨方法,很累。有没有其他方法更便捷一下,比如说正则?
谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/10/7 10:43:00 [只看该作者]

 呃,还是不太熟练,弄了很久。

 

Dim data As String = FileSys.ReadAllText("d:\test.htm").Replace(vbcrlf, "").Replace(chr(9), "")

Dim reg As new System.Text.RegularExpressions.Regex("(?><td.*?>).*?</td>")
Dim reg2 As new System.Text.RegularExpressions.Regex("(?<=<td.*?>).*?(?=<)")
Dim mc As object = reg.Matches(data)
For i As Integer = 0 To mc.count - 1
    Dim m As object = reg2.matches(mc(i).value)
    output.Show(m(0).value)
Next


 回到顶部
帅哥哟,离线,有人找我吗?
y2287958
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4752 积分:34568 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2013/10/7 14:51:00 [只看该作者]

谢谢,谢谢!
要的就是这个效果,verry good!

 回到顶部