qq_41265012 2021-10-29 14:49 采纳率: 70%
浏览 41
已结题

PHP 提取table指定列怎么处理


 
<table class="ntable">
<tbody>
<tr>
<th class="tx">序号</th>
<th>项目1</th>
<th>项目2</th>
<th>项目3</th>
<th>项目4</th>
<th>项目5</th>
<th>项目6</th>
</tr>
 <tr>
<td class="tx">1</td>
<td>内容1</td>
<td>内容2</td>
<td>内容3</td>
<td>内容4</td>
<td>内容5</td>
<td>内容6</td>
</tr> 
 <tr>
<td class="tx">2</td>
<td>内容1-1</td>
<td>内容2-2</td>
<td>内容3-3</td>
<td>内容4-4</td>
<td>内容5-5</td>
<td>内容6-6</td>
</tr> 
 <tr>
</tbody>
</table>

我要提取项目2和项目3两列数据,PHP应该怎么处理

  • 写回答

1条回答 默认 最新

  • 一把编程的菜刀 2021-10-29 15:11
    关注
    <?php
    header("Content-Type: text/html; charset=gb2312");
        $str=' 
    <table class="ntable">
    <tbody>
    <tr>
    <th class="tx">序号</th>
    <th>项目1</th>
    <th>项目2</th>
    <th>项目3</th>
    <th>项目4</th>
    <th>项目5</th>
    <th>项目6</th>
    </tr>
     <tr>
    <td class="tx">1</td>
    <td>内容1</td>
    <td>内容2</td>
    <td>内容3</td>
    <td>内容4</td>
    <td>内容5</td>
    <td>内容6</td>
    </tr> 
     <tr>
    <td class="tx">2</td>
    <td>内容1-1</td>
    <td>内容2-2</td>
    <td>内容3-3</td>
    <td>内容4-4</td>
    <td>内容5-5</td>
    <td>内容6-6</td>
    </tr> 
     <tr>
    </tbody>
    </table>';
    $pattern='/\s+/';
    $str=preg_replace($pattern,'', $str);
    $pattern='/<tr><tdclass="tx">(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><\/tr>/i';
    preg_match_all($pattern, $str,$match);
    print_r($match);
    if($match[3]){//项目2的内容
        print_r($match[3]);
    }
    if($match[4]){//项目3的内容
        print_r($match[4]);
    }
    ?>
    
    

    结果如下:

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月9日
  • 已采纳回答 11月1日
  • 创建了问题 10月29日

悬赏问题

  • ¥15 对于这个问题的代码运行
  • ¥50 三种调度算法报错 有实例
  • ¥15 关于#python#的问题,请各位专家解答!
  • ¥200 询问:python实现大地主题正反算的程序设计,有偿
  • ¥15 smptlib使用465端口发送邮件失败
  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败