Perl从多维数组返回数组

时间:2015-05-22 11:51:32

标签: arrays perl multidimensional-array reference grep

我有这个多维数组:

@valid_values = (["val00", "val01", "val02"], ["val10", "val11", "val12"]);

通过grep我想检查多维数组的第一个数组中是否存在某个值。 我尝试过这样的事情:

if (grep $_ eq $check_value, @valid_values[0]) {print "ok\n"}

但这不起作用。我也尝试使用$valid_values[0],但我认为这只会返回对数组的引用,因此我使用@取消引用它。

关于如何返回2d数组的整个第一个数组的任何建议,所以我可以将它用于grep函数?

1 个答案:

答案 0 :(得分:3)

@valid_values的第一个元素是$valid_values[0]

第一个元素中的值是数组引用。要取消引用数组引用,请使用@{ ... }

所以要在@valid_values的{​​{1}}的第一个元素中获取数组引用所引用的数组。

有关如何处理此类数据结构的详细信息,请参阅perllolperldscperlreftut