小编ala*_*thi的帖子

如何在Perl中按降序排序dd:mm:yyyy hh24:mi:ss格式的时间戳?

我必须按时间戳(dd:mm:yyyy hh24:mi:ss)降序排序我的哈希键.

sort { $b <=> $a } keys %time_spercent
Run Code Online (Sandbox Code Playgroud)

这种方式并没有让我得到我打算做的事情.相反,即使日期不是这样,这也会以更高的小时和分钟排序结束.例如,正如我所提到的那样,这就是我进行排序的方式.

21:01:2011 16:51:09
21:01:2011 16:49:54
26:01:2011 11:02:55
26:01:2011 11:01:40
05:04:2011 11:51:13
05:04:2011 11:51:13
05:04:2011 11:48:37
05:04:2011 11:48:37
Run Code Online (Sandbox Code Playgroud)

相反,我希望它们按照这个顺序按日期和时间排列.

05:04:2011 11:51:13
05:04:2011 11:51:13
05:04:2011 11:48:37
26:01:2011 11:02:55
26:01:2011 11:01:40
05:04:2011 11:48:37
21:01:2011 16:51:09
21:01:2011 16:49:54
Run Code Online (Sandbox Code Playgroud)

任何关于如何做到这一点的建议都会感激不尽.

更新

foreach my $status_date( 
     map  { $_->[0] }
     sort { $b->[1] cmp $a->[1] }
     map  { [$_, sorting_desc($_)] } keys % {$com_sam->{ $s1 } } ) 
Run Code Online (Sandbox Code Playgroud)

sub sorting_desc {
    $_ = shift; …
Run Code Online (Sandbox Code Playgroud)

sorting perl timestamp

5
推荐指数
1
解决办法
1892
查看次数

标签 统计

perl ×1

sorting ×1

timestamp ×1