![](/img/trans.png)
[英]perl get reference to temp list returned by function without making a copy?
[英]How to get a reference to the list returned by Perl's grep?
我想使用grep
函數來過濾值列表,並將對已過濾列表的引用存儲到哈希中。 我所追求的是:
my $allValues = [
'a',
'unwanted value',
'b',
'c',
];
$stuff = {
'values' => grep { $_ ne 'unwanted value' } @$allValues
};
只有當我嘗試時, %$stuff
哈希是:
$VAR1 = { 'b' => 'c', 'values' => 'a' };
有沒有辦法修復匿名哈希創建代碼,以便我得到:
$VAR1 = { 'values' => [ 'a', 'b', 'c' ] };
但不是通過創建局部變量或調用子程序(換句話說,所有內聯)?
嘗試:
$stuff = {
'values' => [ grep { $_ ne 'unwanted value' } @$allValues ]
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.