Perlに変数は空かどうかを判断するには?

Perlでは、defined関数を用いて変数が空かどうかを判断できます。defined関数はブール値を返し、変数が定義済みで空でない場合は真、それ以外の場合は偽を返します。

以下は例です

my $var1 = "";
my $var2;
my $var3 = "Hello";
if (defined $var1) {
print "var1 is defined\n";
} else {
print "var1 is not defined\n";
}
if (defined $var2) {
print "var2 is defined\n";
} else {
print "var2 is not defined\n";
}
if (defined $var3) {
print "var3 is defined\n";
} else {
print "var3 is not defined\n";
}

本質的に

var1 is defined
var2 is not defined
var3 is defined

このサンプルでは、$var1 は空文字列に代入され、$var2 は代入されておらず、$var3 は “Hello” に代入されています。 defined 関数はこれらの 3 つの変数の状態をそれぞれ判定し、対応する結果を出力します。

bannerAds