gpt4 book ai didi

perl - 如何在Perl中对日期排序?

转载 作者:行者123 更新时间:2023-12-04 09:22:06 42 4
gpt4 key购买 nike

如何在Perl中对日期排序?

my @dates =  ( "02/11/2009" , "20/12/2001" , "21/11/2010" ); 

我的数组中有上述日期。如何排序这些日期?

我的日期格式是 dd/mm/YYYY

最佳答案

@dates = sort { join('', (split '/', $a)[2,1,0]) cmp join('', (split '/', $b)[2,1,0]) } @dates;

或使用单独的排序子例程:
sub mysort {
join('', (split '/', $a)[2,1,0]) cmp join('', (split '/', $b)[2,1,0]);
}
@dates = sort mysort @dates;

更新:一种更有效的方法是Schwartzian变换:
@dates = 
map $_->[0],
sort { $a->[1] cmp $b->[1] }
map [ $_, join('', (split '/', $_)[2,1,0]) ], @dates;

关于perl - 如何在Perl中对日期排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2491471/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com