日期:2014-05-17  浏览次数:20629 次

正则表达式抓取table数据的内容
模板时固定的,想要将该table下的所有数据抓取出来,例如100.00,HKD等等,应该怎样写呢?谢谢~

HTML code
<table width="100%" cellspacing="0" cellpadding="0" border="0" style="height:4.7em;">
<tbody>
<tr class="uccRes">
<td width="47%" align="right">
100.00 
<span class="uccResCde">HKD</span>
</td>
<td width="6%" valign="middle" align="center">=</td>
<td width="47%" align="left">
80.8549 
<span class="uccResCde">CNY</span>
</td>
</tr>
<tr class="uccResRgn">
<td width="47%" align="right">
<a href="/currency/hkd-hong-kong-dollar">Hong Kong Dollar</a>
</td>
<td width="6%" valign="middle" align="center" rowspan="2">
<a class="uccResInv" href="/ucc/convert/?Amount=100&From=CNY&To=HKD">?</a>
</td>
<td width="47%" align="left">
<a href="/currency/cny-chinese-yuan-renminbi">Chinese Yuan Renminbi</a>
</td>
</tr>
<tr class="uccResUnit">
<td width="47%" align="right">1 HKD = 0.808549 CNY</td>
<td width="47%" align="left">1 CNY = 1.23678 HKD</td>
</tr>
</tbody>
</table>


------解决方案--------------------
http://hi.baidu.com/zenghouzhu/item/cdd844c68604932a46d5c001
------解决方案--------------------
正则文盲,来学习一下。
------解决方案--------------------
模板固定,抓取是比较容易的,如抓取“1 HKD = 0.808549 CNY”,你可以这样写,分步抓取,先获取这段内容
C# code
<tr class="uccResUnit">
<td width="47%" align="right">1 HKD = 0.808549 CNY</td>
<td width="47%" align="left">1 CNY = 1.23678 HKD</td>
</tr>
然后在获取你要抓取的
<td width="47%" align="right">(?<val>.*?)</td>,其它的类似

------解决方案--------------------
(?<=>)[^<>]+(?=<)
------解决方案--------------------
这种用JS来操作方便点