gpt4 book ai didi

arrays - 按值搜索数组中的哈希

转载 作者:行者123 更新时间:2023-12-04 13:04:56 26 4
gpt4 key购买 nike

我有一个将Excel数据提取到哈希数组中的函数,如下所示:


sub set_exceldata {

my $excel_file_or = '.\Excel\ORDERS.csv';
if (-e $excel_file_or) {

open (EXCEL_OR, $excel_file_or) || die("\n can't open $excel_file_or: $!\n");
while () {

chomp;
my ( $id, $date, $product, $batchid, $address, $cost ) = split ",";
my %a = ( id => $id
, date => $date
, product => $product
, batchid => $batchid
, address => $address
, cost => $cost
);
push ( @array_data_or, \%a );
}
close EXCEL_OR;
}
}

填充哈希数组很好。但是,困难的部分是在数组中搜索特定项目(哈希)。我似乎无法找到可能具有id或21,或batchid为15或成本> $ 20等的项目。

我将如何实现这样的搜索工具?

谢谢大家,

最佳答案

凭借grep的力量

my @matching_items = grep {
$_->{id} == 21
} @array_data_or;

如果您知道将只退回一件商品,则可以执行以下操作:
my ($item) = grep {
$_->{id} == 21
} @array_data_or;

(未经测试,而且我已经有一段时间没有编写其中一个了,但这应该可以工作)

关于arrays - 按值搜索数组中的哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/934225/

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