求:php正则表达式,解析<table>中的<tr>中的<td>为一个二维数组

要求:$arr[0][1]=<tr0><td1>要求不用循环。例如,<table><tr><td>1</td><td>2</td><td>3</td><td>4</td>... 要求:$arr[0][1]=<tr0><td1>
要求不用循环。
例如,
<table>
<tr><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr>
<tr><td>a</td><td>b</td><td>c</td><td>d</td><td>e</td><td>f</td></tr>
</table>

输出
{
0=>{1,2,3,4,5,6},
1=>{a,b,c,d,e,f}
}
展开
 我来答
好想开心一下
推荐于2016-01-21 · 超过24用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:0
展开全部
不用循环我还不会。

$html='<table> <tr><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td></tr> <tr><td>a</td><td>b</td><td>c</td><td>d</td><td>e</td><td>f</td></tr> </table>';
$tmp='/<tr.*<td.*<td.*>(\w*)<\/td>.*<td.*<u><b>(\w*)<\/b><td.*>(\w*)<\/td>.*<td.*>(\w*)<\/td>.*<td.*>(\w*)<\/td>.*<td.*<td.*>(\w*)<\/td>.*<td.*>(\w*)<\/td>.*<td.*>(\w*)<\/td>.*<td.*>(\w*)<\/td>.*<td.*>(\w*)<\/td>.*<td.*>(\w*)<\/td>.*<td.*>(\w*)<\/td>.*<td.*<td.*>(\w*)<\/td>.*/s';
$tmp="/<tr.*>(.*)<\/tr>/iUs";
preg_match_all($tmp,$html,$macthes);

$tmp="/<td.*>(.*)<\/td>/iUs";
$arr=Array();
foreach($macthes[1] as $tr)
{
preg_match_all($tmp,$tr,$td);
$arr[]=$td[1];
}
print_r($arr);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刻苦又勤快的小萨摩7911
2009-04-09 · 超过12用户采纳过TA的回答
知道答主
回答量:50
采纳率:0%
帮助的人:0
展开全部
龖齉龘靐爨羃醗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式