dyno2316 ロヒミフ perl VBA Excel 秀丸

入力レコードの各カラム毎の文字の集計

#--------------------------------------
#☆入力レコードの各カラム毎の文字の集計を行う
#--------------------------------------
# 123456789 <= カラム
# ----------
# ABCDEFGHI
# BBDEFGHIA
# CDEFGHIAB
#
# 上記のファイルの集計で以下の表示をする
# 01A:1 01カラム目の文字「A」の数は1個
# 01B:1        ・
# 01C:1        ・
# 02B:2        ・
# 02D:1        ・
# ・
# ・
#######################################

if ($ARGV[0] eq "") {die "anketo.pl 入力ファイルなし¥n"};

open(FIN,$ARGV[0]) || die "IN File can't open ¥n";
undef %caltbl;

while ($rec=&ltFIN>)
{
##print "$_¥n";
chomp($rec);
$lng=length($rec);
##print "$lng:$rec¥n";
for ($i = 0; $i < $lng; $i++)
{
$moji=substr($rec,$i,1);
### $pos =$i+1;
$pos = sprintf("%02d", $i+1);

$indx = $pos.$moji;
### print "$indx¥n";
$caltbl{$indx}++;
}
}

foreach $indx ( sort keys %caltbl )
{
print "$indx:$caltbl{$indx}¥n";
}