splitで、undefが来たり空文字列が来たりする。
$ perl -Mstrict
my ($s1, $s2, $s3) = split(/=/, '=');
print defined $s1, " ← S1\n";
print defined $s2, " ← S2\n";
print defined $s3, " ← S3\n";
my @arr_s = split(/=/, '=');
print defined $arr_s[0], " ← S[0]\n";
print defined $arr_s[1], " ← S[1]\n";
print scalar(@arr_s), " ← count\n";
【結果】
1 ← S1
1 ← S2
← S3
← S[0]
← S[1]
0 ← count
誰か解説求む。