40

質問に関連:Perlで評価された式に置き換えるにはどうすればよいですか?

Perlでは、Rubyのように行う方法はありますか?

$a = 1;
print "#{$a + 1}";

そしてそれは印刷することができます2か?

4

2 に答える 2

71

これには、Perlにも同様の省略形があります。

$a = 1;
print "@{[$a + 1]}"

これが機能するの[]は、が1つの要素(計算の結果)を含む配列への参照を作成し、次に@{}配列を逆参照し、文字列補間内で配列の各要素を順番に出力するためです。1つしかないため、1つの要素を出力するだけです。

于 2010-10-15T06:20:41.953 に答える
10

@{[ EXPRESSION ]}GregHewgillが言及したトリックを使用できます。

式の評価に加えて、補間している値(HTMLエンティティのエンコードなど)に対して任意の変換を実行できる補間モジュールもあります。

于 2010-10-15T09:47:08.103 に答える