如何用正则提取网页中表格到数组
<table cellpadding="0" class="table" cellspacing="0" id="entrusts"><thead>
<tr>
<th class="sorted order2">委托编号</th>
<th>交易所</th>
<th>买卖</th>
<th>证券代码</th>
<th>证券名称</th>
<th>委托数量</th>
<th>委托价格</th>
<th>冻结金额</th>
<th>冻结数量</th>
<th>委托时间</th>
<th>股东代码</th>
<th>状态</th>
<th>已成交</th>
<th>可撤</th></tr></thead>
<tbody>
<tr class="odd">
<td>1993</td>
<td>
上证A股
</td>
<td>
卖出
</td>
<td>600583</td>
<td>海油工程</td>
<td>
100
</td>
<td>6.240</td>
<td>0.0000</td>
<td>100</td>
<td>12:00:09</td>
<td>A422019451</td>
<td>
委托取消
</td>
<td>0</td>
<td>
<!--c:if test="false"-->
<input type="button" name="withdraw" id="withdraw" value="撤单" onclick="submitWithdraw(this,'1993','1');"/>
<!--/c:if-->
</td></tr>
<tr class="even">
<td>1990</td>
<td>
上证A股
</td>
<td>
卖出
</td>
<td>600583</td>
<td>海油工程</td>
<td>
100
</td>
<td>6.240</td>
<td>0.0000</td>
<td>100</td>
<td>09:52:51</td>
<td>A422019451</td>
<td>
已成交
</td>
<td>100</td>
<td>
<!--c:if test="false"-->
<input type="button" name="withdraw" id="withdraw" value="撤单" onclick="submitWithdraw(this,'1990','1');"/>
<!--/c:if-->
</td></tr></tbody></table>
</html>
如何用正则提取表格中的数据呀?
委托编号 交易所 买卖 证券代码 证券名称 委托数量 委托价格 冻结金额 冻结数量 委托时间 股东代码 状态 已成交 可撤
1993 上证A股卖出600583 海油工程 1006.240 0.0000 100 12:00:09 A422019451 委托取消0
1990 上证A股卖出600583 海油工程 1006.240 0.0000 100 09:52:51 A422019451 已成交100
共找到2条记录,显示所有记录。
#include <Array.au3>
#include <INet.au3>
$s = FileRead(@ScriptDir &"\1.html")
;MsgBox(0,"",$s)
$ss=StringRegExp($s,'(?i)<th[^>]*>(.*?)</th>',3)
_ArrayDisplay($ss,1)
$ss=StringRegExp($s,'(?i)<td[^>]*>([^</td>]*)</td>',3)
;_ArrayDisplay($ss,1)
For $i=0 To UBound($ss)-1
$x=StringRegExpReplace($ss[$i],'\s','')
MsgBox(0,'',$x)
Next
谢谢 高手呀 $ss=StringRegExp($s,'(?i)<td[^>]*>([^</td>]*)</td>',3)
昨晚看了下精通正则表达式,第三版,发现我上面写的这个[^</td>] 是错误的。
他的等价于[^/td><].....
页:
[1]