使用另一个数组命令hash perl

use*_*170 2 sorting perl

我试图使用列表/数组对哈希进行排序

my $hash =  {     cta => '01340031810312074443',
                  ttr => '001',fil => '0000',     
                  ref => '0000',
                  mef => '0000000000000060000',
                  mch => '0000000000000000000',
                  nli => '00000000',
                  tdi => 'V',
                  ndi => '006126952',
                  tdip => 'V',
                  ndip => '006126952',
              };

@order = qw(cta ttr fil ref mef mch nli tdi ndi tdip ndip);
Run Code Online (Sandbox Code Playgroud)

我们知道Perl不会以散列方式保存订单,但我需要按此顺序打印.我怎样才能做到这一点?

谢谢

Ilm*_*nen 7

如果您只想打印值而不是键,则还可以使用哈希切片:

use feature 'say';
say join "\t", @hash{@order};
Run Code Online (Sandbox Code Playgroud)