跪求php正则表达式提取表格中的内容并保存为数组

从下面表格内容中提取,从第二个TR开始,保存为一个二维数组,把输出数组的语言也写出来<TABLEcellSpacing=0cellPadding=0width="100%... 从下面表格内容中提取,从第二个TR开始,保存为一个二维数组,把输出数组的语言也写出来
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD class=zx_data width="10%">截止时间</TD>
<TD class=zx_data3 width="42%">银行名称</TD>
<TD class=zx_data3 width="18%">分支数量</TD>
<TD class=zx_data3 width="15%">所占比例(%)</TD>
<TD class=zx_data3 width="15%">银行大小</TD></TR>
<TR>
<TD class=zx_data rowSpan=10>20101231</TD>
<TD class=zx_data3>1.中国银行</TD>
<TD class=zx_data3>2,752,881</TD>
<TD class=zx_data3>1.529</TD>
<TD class=zx_data3>大银行</TD></TR>
<TR>
<TD class=zx_data3>2.中国农行</TD>
<TD class=zx_data3>2,513,239</TD>
<TD class=zx_data3>1.396</TD>
<TD class=zx_data3>大银行</TD></TR>
<TR>
<TD class=zx_data3>3.中国建设银行</TD>
<TD class=zx_data3>2,026,790</TD>
<TD class=zx_data3>1.126</TD>
<TD class=zx_data3>大银行</TD></TR>
<TR>
<TD class=zx_data3>4.招商银行</TD>
<TD class=zx_data3>1,594,735</TD>
<TD class=zx_data3>0.886</TD>
<TD class=zx_data3>大银行</TD></TR>
展开
 我来答
yongirl320
2011-04-10 · TA获得超过830个赞
知道小有建树答主
回答量:280
采纳率:100%
帮助的人:478万
展开全部
<?php

$content = '<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD class=zx_data width="10%">截止时间</TD>
<TD class=zx_data3 width="42%">银行名称</TD>
<TD class=zx_data3 width="18%">分支数量</TD>
<TD class=zx_data3 width="15%">所占比例(%)</TD>
<TD class=zx_data3 width="15%">银行大小</TD></TR>
<TR>
<TD class=zx_data rowSpan=10>20101231</TD>
<TD class=zx_data3>1.中国银行</TD>
<TD class=zx_data3>2,752,881</TD>
<TD class=zx_data3>1.529</TD>
<TD class=zx_data3>大银行</TD></TR>
<TR>
<TD class=zx_data3>2.中国农行</TD>
<TD class=zx_data3>2,513,239</TD>
<TD class=zx_data3>1.396</TD>
<TD class=zx_data3>大银行</TD></TR>
<TR>
<TD class=zx_data3>3.中国建设银行</TD>
<TD class=zx_data3>2,026,790</TD>
<TD class=zx_data3>1.126</TD>
<TD class=zx_data3>大银行</TD></TR>
<TR>
<TD class=zx_data3>4.招商银行</TD>
<TD class=zx_data3>1,594,735</TD>
<TD class=zx_data3>0.886</TD>
<TD class=zx_data3>大银行</TD></TR>';

$content =explode('<TR>',$content);

$arr = array();
for($i=2;$i<count($content);$i++){
preg_match_all('/<TD class=zx_data3>(.*)<\/TD>/iU',$content[$i],$match);
$arr[] = $match[1];
}

print_r($arr);
?>
追问
能不能用二维数组保存;
另外把3.中国建设银行里的3.去掉,即去掉顺序。
就这么多了,回答出来给来你加30分
追答
这个代码输出的 $arr已经是 二维数组了 。 下面代码是改好的 去掉 顺序的

$content =explode('',$content);

$arr = array();
for($i=2;$i(.*)/iU',$content[$i],$match);

$ma = explode('.',$match[1][0]);
array_shift($ma);
$match[1][0] = implode('.',$ma);

$arr[] = $match[1];
}

print_r($arr);
?>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式