
求: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}
} 展开
要求不用循环。
例如,
<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}
} 展开
展开全部
不用循环我还不会。
$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);
$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);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
龖齉龘靐爨羃醗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询