找回密码
 加入
搜索
查看: 3856|回复: 5

[IE类操作] 请教:如何匹配关键字提取包含关键字的表格内容?

  [复制链接]
发表于 2011-9-8 11:25:48 | 显示全部楼层 |阅读模式
本帖最后由 jincute 于 2011-11-8 16:59 编辑

网页里面包含好多个表格,大概格式是这样的:
<table>……<tr>……<td>……</td>……</tr>……</table>
中间有好多个<tr>嵌套。

想实现的功能是搜索里面的关键字然后提取整个<tr></tr>里面的内容(不包含html代码)
比如:
…… <tr><td>A</td><td>B</td><td>C</td></tr>……
如果整个网页搜索到B,则返回<tr>便签里面的A,B,C内容放入数组里面。

请教一下,可以有什么正则表达实现这个功能吗?

想使用两次正则的方法去提取想要的内容,第一次正则已经提取了如下信息:
High Performance<br> ');">GSM High Performance

二次正则想只提取">后面的GSM High Performance,这个应该怎么写呢?
希望得到大牛的回复!
发表于 2011-9-8 20:51:49 | 显示全部楼层
本帖最后由 xms77 于 2011-9-8 20:52 编辑
$html = "laufojewjfdosaj<tr><td>A</td><td>B</td><td>C</td></tr>……"
$temp = StringRegExp($html, "<tr>.*</tr>", 1)
MsgBox(0,"",$temp[0])
$Uneed = StringRegExp($temp[0],"<td>([^<]*)</td>",3)
For $i = 0 To UBound($Uneed)-1
        MsgBox(0,"",$Uneed[$i])
Next
不知道是不是能满足你的要求?
发表于 2011-9-8 21:59:50 | 显示全部楼层
弄个完整的表格源码试试~ 尽量考虑多种情况。
有时间来折腾下~ 初步估计要两次正则,首先提取符合要求的段落,再提取文本到数组
发表于 2011-9-9 13:46:04 | 显示全部楼层
如果是表格的话,我记得有个函数可以获取表格的内容到数组。楼主自己看帮助吧。帮助有。
发表于 2011-9-9 16:25:21 | 显示全部楼层
表示不会、看看高手怎么解决的
发表于 2011-9-9 16:33:36 | 显示全部楼层
楼主可以尝试用这个函数搞搞看,虽然山寨不高效,但是个人觉得挺好用。。。
;截取项目中间的字符串
Func QUZJDX($stringc,$sstring,$estring,$cs=1)
If StringInStr($stringc,$sstring,1,$cs)<=0 Then Return ""
Local $start=StringInStr($stringc,$sstring,1,$cs)+StringLen($sstring)
Local $end=StringInStr($stringc,$estring,0,1,$start)
If $end-$start<=0 Then Return ""
Return StringStripWS(StringMid($stringc,$start,$end-$start),3)
EndFunc
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 07:09 , Processed in 0.078313 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表