Я хочу отсортировать массивref% результатов (временные строки, от старого к новому), он имеет несколько ключей, но я только что опубликовал один ключ, чтобы показать, как он выглядит:
'Ende Monatswechsel P-Konten' => [
'17.02.2018 05:17:39',
'14.02.2018 04:28:11',
'23.02.2018 03:17:17',
'22.02.2018 03:39:20',
]
Яожидая:
'Ende Monatswechsel P-Konten' => [
'14.02.2018 04:28:11',
'17.02.2018 05:17:39',
'22.02.2018 03:39:20',
'23.02.2018 03:17:17',
]
Кто-нибудь знает, как это сделать?Я пытался:
my $columns = map [ $_, sort{$a <=> $b} @{ $results{$_} } ], keys %results;
, но это не работает.Заранее спасибо.
Мой код выглядит так:
while(my $line=<F>) {
#- Info: 19.02.2018 00:01:01 --- Start Tageswechsel-CoBa ---
#- Info: 27.11.2018 04:16:42 --- Ende Tageswechsel-CoBa ---
if ($line=~ /(\d\d\.\d\d\.\d\d\d\d \d\d:\d\d:\d\d) --- (.+? Tageswechsel-CoBa) -.*\s*$/)
{
($timestamp, $action) = ($1,$2);
}
if ( !defined $filter{$action}{$timestamp} ) {
push @{$results{$action}}, $timestamp;
$filter{$action}{$timestamp} = 1;
}
}
print Dumper(\%results)
вывод:
'Start Tageswechsel-CoBa' => [
'17.02.2018 05:12:13',
'20.02.2018 04:23:16',
'22.02.2018 03:12:46',
'23.02.2018 03:34:28',
'27.02.2018 03:41:25',
'02.03.2018 03:32:26',
],
'Ende Tageswechsel-CoBa' => [
'17.02.2018 05:20:01',
'19.02.2018 06:01:02',
'20.02.2018 04:29:44',
'22.02.2018 03:19:04',
'23.02.2018 03:40:52',
'26.02.2018 06:01:26',
]
};