perlの特殊変数を実際に使ってみよう その2【$,】【$"】【$\】
昨日に引き続き、特殊変数を使ってみました。
$,ってなんぞや・・・?
まずは、$, です。
説明から読んでみましょう。
出力時の項目区切り文字。print @xx; の時に有効
なるほど
使ってみよう
#!/usr/bin/perl use strict; use warnings; my @array = qw/aa bb cc/; $, = "---"; print @array;
結果
aa---bb---cc
なるほど。
確かに説明どおり、出力時の区切り文字が変化している。
これは少し便利かな。
join して、hogehogeがいらない。
でも、$,をglobalで変えるのはよろしくないな。
{ my @array = qw/aa bb cc/; local $, = "---"; print @array; }
こうすべき?
次は、$"
説明を読んでみましょう。
出力時の項目区切り文字。print "@xx"; の時に有効
なるほど。
使ってみよう
#!/usr/bin/perl use strict; use warnings; my @array = qw/aa bb cc/; $" = "---"; print @array; print "\n\n"; print "@array";
結果は
aabbcc aa---bb---cc
確かに、
print @array; これでは適用されず print "@array"; これに反応している。
引用符内での適用の有無の違いだけか。
次は、$\
例によって意味から
出力時の行末文字。print "$xx"; の後ろに付加される
なるほどね。
やってみよう。
#!/usr/bin/perl use strict; use warnings; my @array = qw/aa bb cc/; $\ = " (-_-)\n"; for(@array){ print $_; }
結果は
aa (-_-) bb (-_-) cc (-_-)
いい感じwww
これは便利だな。