corpx has asked for the wisdom of the Perl Monks concerning the following question:

I need to look_down a tree and find all items which has style attributes of 128px;width:160px; (there might be more style attributes for items, but this is all I'm interested in) Is there any way to use regex to filter this? Currently I have @rows = $tree->look_down('style' => /128px\;width:160px\;/ ); but that doesnt even compile :/ Any ideas?

Replies are listed 'Best First'.
Re: How to use regex in Tree->look_down
by GrandFather (Saint) on Oct 24, 2009 at 07:57 UTC
    my @rows = $tree->look_down (style => '128px', width => '160px');

    True laziness is hard work
      look_down works on html attributes, width is a css attribute
      #!/usr/bin/perl -- use strict; use warnings; use HTML::TreeBuilder; my $html = '<html><body> <span style="height:128px;width:160px">bob</span> </body></html>'; my $tree = HTML::TreeBuilder->new(); $tree->parse( $html ); print $tree->look_down('style',qr/\Q128px;width:160px\E/i)->dump; __END__ <span style="height:128px;width:160px"> @0.1.0 "bob"