2
私は1つのプレゼンテーションから別のプレゼンテーションにコンテンツをマッピングするのが好きで、私はそれを行う "perl'ish"の方法を探しています。Perl: "perl'ish"の方法での値のマッピング
サンプル:
"ok" -> 1
"nok" -> 0
else -> -1
私の溶液は透明ではなく、非常にエレガントです。また、3つ以上の可能なマッピング(0,1、-1)がある場合は痛みです。
my $val = "ok";
if ($val eq "ok")
{
$val = 1;
}
elsif ($val eq "nok")
{
$val = 0;
}
else
{
$val = -1;
}
私はハッシュを使うことができますが、私はまだelse部分を処理する必要があります。
$val = "ok";
my %h = ("ok" => 1, "nok" => 0);
if (defined ($h {$val})
{
$val = $h {$val};
}
else
{
$val = -1;
}
1つのライナーで行うことはできますが、それでも可読ですか?
ありがとうございます!
'$ valを=(定義された($ hを{$ val})?$ h {$ val}:-1; ' – toolic
$ val = $ h {$ val} // -1' – Borodin
@Borodin:ああスナップ:-) –