while (<>) { push(@a, $_) for split(/\s+/); }

Perlのキホンと思われ
これに枝葉ごてごてつければどうにでも応用が利く