小池啓仁 ヒロヒト応援ブログ By はてな

小池啓仁(コイケヒロヒト)の動画など。

小池啓仁 ヒロヒト応援ブログ By はてな

ダブルクォーティション文字列内での配列変数の展開

まず、配列変数をprintすると要素がくっ付いて表示されます。
また、スカラー値と連結すると要素数を表示します。
では、ダブルクォーティション文字列内では、どうなるかというと、要素がスペースデリミタで表示されます。
実は、スペースデリミタは、「$"」変数の値によって自由に変えられるのです。

my @xxx = qw(111 222 AAA);
print @xxx, "\n";       # 要素がくっ付いて表示
print "@xxx", "\n";     # 要素がスペースデリミタで表示
print 3 .  @xxx, "\n";  # スカラー値と連結すると要素数を表示
$" = "macha";           # デリミタを変更
print "@xxx", "\n";     # 要素がデリミタがmachaになる

処理結果

C:\Documents and Settings\xxx>perl hairetu.pl
111222AAA
111 222 AAA
33
111macha222machaAAA