CSS 使用 Mojo::DOM 选择

CSS selection using Mojo::DOM

这是一个多学科问题,所以答案可能不是纯粹的 CSS。

我正在解析一个大的 table,我的目标是只检索 <b></b> 标签之外的文本。我能够 select 行,但仍然停留在如何仅 select 粗体标记之外的文本上。

HTML

<div id="tab1">
<table width='650' class='subtblfont'>
    <tr><td>&nbsp;</td></tr> 
    <tr><td>&nbsp;</td></tr>        
    <tr>
        <td><b>Check-in Date:&nbsp;</b>04/20/2013</td>
        <td><b>Check-in Date:&nbsp;</b>04/25/2013</td>
    </tr>
</table>

代码

$row_content = $results_dom->find('div#tabs-1 tr:nth-child(3) td');

foreach (@$row_content) {
    print "$_\n";
}

输出

<td><b>Check-in Date:&nbsp;</b>04/20/2013</td>
<td><b>Check-in Date:&nbsp;</b>04/25/2013</td>

期望输出

04/20/2013
04/25/2013

我可以使用正则表达式来提取文本,但目前这不是理想的解决方案。有没有办法 select 只有非粗体文本?

来自Documentation

text

Extract text content from this element only (not including child elements).

尝试一下:

(当然我不太了解 perl,所以如果我的语法有误...抱歉)

$row_content = $results_dom->find('div#tabs-1 tr:nth-child(3) td')->each(sub { say $_->text})