加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在perl中对间隔数组进行排序?

发布时间:2020-12-15 23:24:23 所属栏目:大数据 来源:网络整理
导读:我在perl中有一个数组,有一些间隔,如: @array = qw(1-5 7-9 10-15 20-58 123-192 234-256) 我试图使用排序来订购它,但这是我获得的: 1-5,10-15,123-192,20-58,234-256,7-9 它按第一个数字的第一个字符排序……为了获得下一个数组,如何按整个第一个数字排序
我在perl中有一个数组,有一些间隔,如:

@array = qw(1-5 7-9 10-15 20-58 123-192 234-256)

我试图使用排序来订购它,但这是我获得的:

1-5,10-15,123-192,20-58,234-256,7-9

它按第一个数字的第一个字符排序……为了获得下一个数组,如何按整个第一个数字排序?

1-5,7-9,234-256

非常感谢你!

附:

我没有这个代码,我正在尝试这个命令

my @sorted = sort @array;

解决方法

您需要为每个元素提取第一个数字,并使用< =>进行数值比较.操作符,

my @array = qw(1-5 7-9 10-15 20-58 123-192 234-256);
my @sorted = sort {
  my ($aa,$bb) = map /^([0-9]+)/,$a,$b; 

  $aa <=> $bb;
} @array;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读