nop*_*ole 34 perl string-interpolation
与问题相关:如何用Perl中的计算表达式替换?
在Perl中,有没有像Ruby这样的方法:
$a = 1;
print "#{$a + 1}";
Run Code Online (Sandbox Code Playgroud)
它可以打印出来2
吗?
Gre*_*ill 58
在Perl中有类似的简写:
$a = 1;
print "@{[$a + 1]}"
Run Code Online (Sandbox Code Playgroud)
这是有效的,因为它[]
创建了对包含一个元素的数组的引用(计算结果),然后@{}
取消引用数组,在字符串插值内部按顺序打印数组的每个元素.由于只有一个,它只打印一个元素.
cjm*_*cjm 10
你可以使用@{[ EXPRESSION ]}
Greg Hewgill提到的技巧.
还有Interpolation模块,它允许您对要插值的值(如编码HTML实体)进行任意转换,以及评估表达式.
归档时间: |
|
查看次数: |
11798 次 |
最近记录: |