テキストで表を作成する


 Text::UnicodeTable::Simpleモジュールを使うと簡単です。
use strict;
use warnings;

use utf8;
use Text::UnicodeTable::Simple;

binmode STDOUT, ":utf8";
#binmode STDOUT, ":encoding(cp932)"; # for windows

my $table = Text::UnicodeTable::Simple->new();

$table->set_header('サイト', 'URL');
$table->add_row('google', 'http://www.google.co.jp');
$table->add_row('yahoo', 'http://www.yahoo.co.jp');
$table->add_row('biglobe', 'http://www.biglobe.ne.jp');
$table->add_row_line();
$table->add_row('MAS', 'http://www2u.biglobe.ne.jp/~MAS/');

print $table;
# 実行結果

.---------+----------------------------------.
| サイト  | URL                              |
+---------+----------------------------------+
| google  | http://www.google.co.jp          |
| yahoo   | http://www.yahoo.co.jp           |
| biglobe | http://www.biglobe.ne.jp         |
+---------+----------------------------------+
| MAS     | http://www2u.biglobe.ne.jp/~MAS/ |
'---------+----------------------------------'
 枠なしにすることもできます。
use strict;
use warnings;

use utf8;
use Text::UnicodeTable::Simple;

binmode STDOUT, ":utf8";
#binmode STDOUT, ":encoding(cp932)"; # for windows

my $table = Text::UnicodeTable::Simple->new(
    border => 0,
);

$table->set_header('サイト', 'URL');
$table->add_row('google', 'http://www.google.co.jp');
$table->add_row('yahoo', 'http://www.yahoo.co.jp');
$table->add_row('biglobe', 'http://www.biglobe.ne.jp');
$table->add_row('MAS', 'http://www2u.biglobe.ne.jp/~MAS/');

print $table;
# 実行結果

 サイト   URL
 google   http://www.google.co.jp
 yahoo    http://www.yahoo.co.jp
 biglobe  http://www.biglobe.ne.jp
 MAS      http://www2u.biglobe.ne.jp/~MAS/

関連項目

固定幅で折り返す
固定幅で折り返す2