【发布时间】:2014-08-03 15:37:57
【问题描述】:
我遇到了对哈希数组进行排序的问题;具有我需要排序的字母数字值的哈希。
参考这个question!我的问题是这个问题的延伸。 我尝试了上述问题中的解决方案,但没有得到所需的输出。
$arr_ref = [
{ brand => "A.1", PO => "1.a", supplier => "X" },
{ brand => "A.2", PO => "2.a", supplier => "X" },
{ brand => "B.1", PO => "1.b", supplier => "X" },
{ brand => "B.2", PO => "2.b", supplier => "X" },
{ brand => "B.3", PO => "1.c", supplier => "Y" },
]
我需要按品牌或采购订单排序。
#sort the array reference and place the array back into the standard_set
$arr_ref = [sort by_brand @$arr_ref];
sub by_brand {
$a->{brand} cmp $b->{brand}
}
复杂性是关键;可以以数字或字母字符开头。 品牌或采购订单也可以有不同的大小。分隔符可以是点或连字符。
我们能否根据$arr_ref 中收到的输入来解决这个问题?
【问题讨论】:
标签: arrays regex perl sorting perl-data-structures