HTML::TableContent::Table - Base class for table's
Version 0.18
use HTML::TableContent; my $t = HTML::TableContent->new()->parse($string); my $table = $t->get_first_table; $table->caption; $table->header_count; $table->row_count; foreach my $header ($table->all_headers) { ... } foreach my $row ($table->all_rows) { ... } my $columns_obj = $table->get_col('Savings'); my $columns = $table->get_header_column_text(header => 'Savings', dedupe => 1);
Base class for Table's.
Return underlying data structure
$table->raw
Render the table as HTML.
$table->render;
Return table as Array of Arrays.
$table->aoa;
Return table as Array of Hashes.
$table->aoh;
HashRef of Table attributes
$table->attributes
Table tag class if found.
$table->class;
Table id if found.
$table->id;
Table caption if found, see HTML::TableContent::Caption.
$table->caption;
Add a caption to the table.
$table->add_caption({})
Boolean check, returns true if table has a caption.
$table->has_caption;
Array Ref of HTML::TableContent::Header's
$table->headers;
Array of HTML::TableContent::Header's
$table->all_headers;
Add a HTML::TableContent::Header to the table.
$table->add_header({});
Number of headers found in table
$table->header_count;
Get header from table by index.
$table->get_header($index);
Get first header in the table.
$table->get_first_header;
Get last header in the table.
$table->get_last_header;
Clear header by array index.
$table->clear_header($index);
Clear first header in table.
$table->clear_first_header;
Clear last header in table.
$table->clear_last_header;
Hash containing headers and their occurence count..
$table->headers_spec;
Boolean check to see if passed in headers exist.
$table->header_exists(qw/Header/);
Returns an array that contains HTML::TableContent::Table::Row::Cell's which belong to that column.
$table->get_header_column(header => $string);
Sometimes you may want to dedupe the column that is returned. This is done based on the cell's text value.
$table->get_header_column(header => 'Email', dedupe => 1)
Return an array of the cell's text.
$table->get_header_column_text(header => 'Email', dedupe => 1);
Shorthand for get_header_column(header => '');
$table->get_col('Email');
Shorthand for get_header_column_text(header => '')
$table->get_col_text('Email');
Array Ref of HTML::TableContent::Row's
$table->rows;
Add a HTML::TableContent::Row to the table.
$table->add_row({});
Array of HTML::TableContent::Row's
$table->all_rows;
Number of rows found in table
$table->row_count;
Get row from table by index.
$table->get_row($index);
Get first row in the table.
$table->get_first_row;
Get last row in the table.
$table->get_last_row;
Clear row by index.
$table->clear_row($index);
Clear first row in the table.
$table->clear_first_row;
Clear last row in the table.
$table->clear_last_row;
ArrayRef of all nested Tables found within the current table.
$table->nested
Array of all nested Tables found within the current table.
$table->all_nested
Boolean check, returns true if the table has nested tables.
$table->has_nested
Count number of nested tables within current table.
$table->count_nested
Get the first nested table.
$table->get_first_nested
Get Nested table by index.
$table->get_nested(1);
Boolean Check, returns 1 if a headers cells consists of nested tables.
$table->has_nested_table_column;
Returns a hash,the header that contains nested tables and the a count of occurence.
$table->nested_column_headers;
Magical. just call it if you want the header columns to work.
my $cell = $row->add_cell({ text => 'hacked' }); $table->parse_to_column($cell);
LNATION, <thisusedtobeanemail at gmail.com>
<thisusedtobeanemail at gmail.com>
Moo, HTML::Parser,
HTML::TableContent::Parser, HTML::TableContent::Table, HTML::TableContent::Table::Caption, HTML::TableContent::Table::Header, HTML::TableContent::Table::Row, HTML::TableContent::Table::Row::Cell
Copyright 2016 LNATION.
This program is free software; you can redistribute it and/or modify it under the terms of the the Artistic License (2.0). You may obtain a copy of the full license at:
http://www.perlfoundation.org/artistic_license_2_0
Any use, modification, and distribution of the Standard or Modified Versions is governed by this Artistic License. By using, modifying or distributing the Package, you accept this license. Do not use, modify, or distribute the Package, if you do not accept this license.
If your Modified Version has been derived from a Modified Version made by someone other than you, you are nevertheless required to ensure that your Modified Version complies with the requirements of this license.
This license does not grant you the right to use any trademark, service mark, tradename, or logo of the Copyright Holder.
This license includes the non-exclusive, worldwide, free-of-charge patent license to make, have made, use, offer to sell, sell, import and otherwise transfer the Package with respect to any patent claims licensable by the Copyright Holder that are necessarily infringed by the Package. If you institute patent litigation (including a cross-claim or counterclaim) against any party alleging that the Package constitutes direct or contributory patent infringement, then this Artistic License to you shall terminate on the date that such litigation is filed.
Disclaimer of Warranty: THE PACKAGE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS IS' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT ARE DISCLAIMED TO THE EXTENT PERMITTED BY YOUR LOCAL LAW. UNLESS REQUIRED BY LAW, NO COPYRIGHT HOLDER OR CONTRIBUTOR WILL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PACKAGE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
To install HTML::TableContent, copy and paste the appropriate command in to your terminal.
cpanm
cpanm HTML::TableContent
CPAN shell
perl -MCPAN -e shell install HTML::TableContent
For more information on module installation, please visit the detailed CPAN module installation guide.