【发布时间】:2011-10-04 18:37:36
【问题描述】:
给定一个哈希:
my %stats_info = (
"2010-10-31T23:30:00",
[
["ASBG_#_Mp_at_bsNo-25_#_sbgMpNoOfSessionSetupAttempts",3290387,],
["ASBG_#_Mp_at_bsNo-25_#_sbgMpNoOfMediaStreams", 508],
["BSBG_#_Mp_at_bsNo-35_#_sbgMpNoOfSessionSetupAttempts",3289764,],
["BSBG_#_Mp_at_bsNo-35_#_sbgMpNoOfMediaStreams", 496],
["ASBG_#_Mp_at_bsNo-35_#_sbgMpNoOfSessionSetupAttempts",3289764,],
["ASBG_#_Mp_at_bsNo-35_#_sbgMpNoOfMediaStreams", 496],
["BSBG_#_Mp_at_bsNo-25_#_sbgMpNoOfSessionSetupAttempts",3290387,],
["BSBG_#_Mp_at_bsNo-25_#_sbgMpNoOfMediaStreams", 508],
],
"2010-10-31T23:15:00",
[
["ASBG_#_Mp_at_bsNo-25_#_sbgMpNoOfSessionSetupAttempts",3288736,],
["ASBG_#_Mp_at_bsNo-25_#_sbgMpNoOfMediaStreams", 610],
["ASBG_#_Mp_at_bsNo-35_#_sbgMpNoOfSessionSetupAttempts",3288113,],
["ASBG_#_Mp_at_bsNo-35_#_sbgMpNoOfMediaStreams", 619],
["BSBG_#_Mp_at_bsNo-35_#_sbgMpNoOfSessionSetupAttempts",3288113,],
["BSBG_#_Mp_at_bsNo-35_#_sbgMpNoOfMediaStreams", 619],
["BSBG_#_Mp_at_bsNo-25_#_sbgMpNoOfSessionSetupAttempts",3288736,],
["BSBG_#_Mp_at_bsNo-25_#_sbgMpNoOfMediaStreams", 610],
],
"2010-10-31T23:45:00",
[
["BSBG_#_Mp_at_bsNo-25_#_sbgMpNoOfSessionSetupAttempts",3291863,],
["BSBG_#_Mp_at_bsNo-25_#_sbgMpNoOfMediaStreams", 445],
["ASBG_#_Mp_at_bsNo-35_#_sbgMpNoOfSessionSetupAttempts",3291239,],
["ASBG_#_Mp_at_bsNo-35_#_sbgMpNoOfMediaStreams", 449],
["ASBG_#_Mp_at_bsNo-25_#_sbgMpNoOfSessionSetupAttempts",3291863,],
["ASBG_#_Mp_at_bsNo-25_#_sbgMpNoOfMediaStreams", 445],
["BSBG_#_Mp_at_bsNo-35_#_sbgMpNoOfSessionSetupAttempts",3291239,],
["BSBG_#_Mp_at_bsNo-35_#_sbgMpNoOfMediaStreams", 449],
],
) ;
和一个排序的键数组:
my @timeline = ("2010-10-31T23:15:00", "2010-10-31T23:30:00", "2010-10-31T23:45:00",) ;
以及对similar question 的有用回答
我的问题是:
- 例如如何将“BSBG_#_Mp_at_bsNo-35_#_sbgMpNoOfMediaStreams”设为“449”的键?
这是我如何访问原始哈希:
foreach my $t (@timeline)
{
my $i=0 ;
while( exists($stats_info{$t}[$i]) )
{
# counter: $stats_info{$t}[$i][0] , quantify: $stats_info{$t}[$i][1] ;
$i = $i+1 ;
}
}
目前的情况是 (counter, quantify) 对是一个数组,我想让这对 counter=>quantify (a hash) 在 $stats_info{$t}
【问题讨论】: