PHP正则表达式帮助请

时间:2013-06-05 21:03:54

标签: php regex preg-match

我将有一张桌子,每张桌子可能有1到6张参与投票,我需要的是一张正则表达式来获得投票金额,我的表格如下:

<tbody><tr>
 </tr>
 <tr>
 <td>
 <div class="tp">
 10 VOTES
 </div>
 </td>
 </tr>
 <tr>
 <td>
 <div class="tp">
 9 VOTES
 </div>
 </td>
 </tr>

1 个答案:

答案 0 :(得分:1)

正如我在评论中所说,你不应该尝试使用正则表达式来解析HTML,因为HTML不是常规语言。

也就是说,这是一个足够简单的案例,所以如果 在这里使用正则表达式,它可能看起来像这样:

$table = '<your html here>';

if(preg_match_all('|^\s*(\d+)\sVOTES|m', $table, $matches)) {
    foreach($matches as $match) {
        echo "votes: $match";
    }
}

请注意,这高度依赖于HTML的结构,而且我真的不建议使用正则表达式(使用XML解析器!)。但你肯定可以,只要你确定你的HTML字符串将始终保持格式化。