質問に関連: Perlで評価された式に置き換えるにはどうすればよいですか?
Perlでは、Rubyのように行う方法はありますか?
$a = 1;
print "#{$a + 1}";
2
を印刷できますか?
これについては、Perlにも同様の省略形があります。
$a = 1;
print "@{[$a + 1]}"
これは、[]
は、1つの要素(計算結果)を含む配列への参照を作成し、次に@{}
は配列を逆参照し、文字列補間の内部で配列の各要素を順番に出力します。 1つしかないため、1つの要素を出力するだけです。
GregHewgillが言及した@{[ EXPRESSION ]}
トリックを使用できます。
Interpolation モジュールもあります。これを使用すると、式の評価に加えて、補間する値(HTMLエンティティのエンコードなど)に対して任意の変換を行うことができます。