#navi_header|Perl| - 配列の要素を数えるには何通りか有る。 - しかし、"$#ary"は、 '' エディタが#以降をコメントとして色分けしてしまう。 '' - というわけで、それ以外の方法にトライしてみた。 - コードピース #!/usr/bin/perl use Data::Dumper; my @ary = (1, 2, 3, 4); print Dumper(@ary), "\n"; # 一昔前の入門書で見かけた配列サイズの取得方法。 # 正確にはサイズでなく、最後の添字を返す。 print "count = ", $#ary, "\n"; # PerlのCOP(Context Oriented Programming)を活かしたサイズの取得方法。 # Perlが勝手にスカラーに直す。このとき、Perl側で良い案配に配列サイズとして # 評価してくれる。 $sz = @ary; print "count = $sz\n"; print '4 > @ary = ', (4 > @ary), "\n"; print '4 == @ary = ', (4 == @ary), "\n"; print '4 < @ary = ', (4 < @ary), "\n"; print "\n"; # COPのおかげで、違和感のない見栄え。 for(my $i = 0; $i < @ary; $i++) { print @ary[$i], "\n"; } print "\n"; foreach my $i (@ary) { print $i, "\n"; } - 出力 $VAR1 = 1; $VAR2 = 2; $VAR3 = 3; $VAR4 = 4; count = 3 count = 4 4 > @ary = 4 == @ary = 1 4 < @ary = 1 2 3 4 1 2 3 4 Perlのコンテキスト判別のおかげで、エディタにとっても優しい書き方ができた。 #navi_footer|Perl|