簡體   English   中英

如何獲取Perl的grep返回的列表的引用?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM