in reply to Lotto table extraction
The grep/grep/map part eliminates empty cells and gets rid of the entities that precede the M/E indicators. The 'next' statement afterwards eliminates empty rows and non-dated rows. This is a shotgun approach. You could easily filter each row using specific column indexes, for example.#!/usr/bin/perl use strict; use warnings; use LWP::Simple; use HTML::TableExtract; my $data = get('http://www.flalottery.com/exptkt/c3.htm'); my $te = HTML::TableExtract->new; $te->parse($data); for my $t ($te->tables) { my $rc = -1; my($d, $c) = $t->coords; for my $r ($t->rows) { ++$rc; @$r = map { s/^[^a-z0-9]//i; $_ } grep { /[a-z0-9]/i } grep { defined $_ } @$r; next unless @$r && $r->[0] =~ m/^\d+\/\d+\/\d+$/; print "row $d:$c:$rc: ", join(':', @$r), "\n"; } }
|
|---|