in reply to Storing table data in a (simulated) multidimensional array

My DBD::AnyData and AnyData modules have an HTMLtable format that uses HTML::TableExtract to pull information from local or remote HTML files or from HTML strings. The plain AnyData module puts the results in a multi-dimensional hash, the DBD::AnyData module puts it into a temporary in-memory DBI/SQL accessible database. If you use the DBD, you can then make use of the many modules that format DBI table data to display it any way you like. Here are examples of use of the two modules (assuming the table has columns user and city and that you want to find Fred Bloggs' city):
#!perl -w use strict use AnyData; my $table = adTie( 'HTMLtable', $filename_url_or_string); while (my $row = each %$table) { printf "%s : %s\n", $row->{user},$row->{city}; } or ... #!perl -w use strict; use DBI; my $dbh=DBI->connect('dbi:AnyData:'); $dbh->ad_catalog( 'Test','HTMLtable', $filename_url_or string); print $dbh->selectrow_array('SELECT city FROM Test WHERE user = ?',und +ef,'Fred Bloggs');
If the file or URL contains more than one table, you can pass HTML::TableExtract values defining the number or headings via the AnyData modules to specify which table you want.