2016-05-12 35 views
0

項目1:BOX1 項目2:BOX1重複值

項目3:BOX2 項目4:BOX2

我有一個哈希值(如上所列)的形式的輸出 我想處理它,以便該輸出看起來就像是

BOX1 = {項目1,項目2} BOX2 = {項目3,項目4}

+0

你有問題嗎? – stevieb

+0

如果不清楚,我很抱歉。我正在尋找在perl – Pankaj

+0

該變化的代碼它仍然不清楚。你沒有顯示一個散列,只是一些純文本。您是否嘗試打印散列,將文本讀入散列,將文本讀入散列並以不同的格式打印,或者完全不同? – ThisSuitIsBlackNot

回答

2

這是我可以根據您的要求做出最:

use strict; 
use warnings; 

use Data::Dumper; 

my %items = (
    Item1 => 'Box1', 
    Item2 => 'Box1', 

    Item3 => 'Box2', 
    Item4 => 'Box2', 
); 

my %boxes =(); 

foreach my $item_name (keys %items){ 
    push @{ $boxes{ $items{$item_name} } }, $item_name; 
} 

print "Boxes: ".Dumper(\%boxes); 

和打印:

Boxes: $VAR1 = { 
      'Box1' => [ 
         'Item1', 
         'Item2' 
        ], 
      'Box2' => [ 
         'Item4', 
         'Item3' 
        ] 
     }; 
+0

這就是我正在尋找的...謝謝 – Pankaj

+0

和對不完整的問題:( – Pankaj

+1

很酷,我很高興我可以幫助 –