【发布时间】:2014-04-27 22:43:44
【问题描述】:
我无法将我的大脑包裹在返回的数据结构周围......我需要做的是检查结果,如果它是一个 HASH,则修改一个字段。在“结果”中,任何 KEY 为“null”且值为“1”的 HASH 都需要更改为“0”。下面我粘贴了一些来自 Data::Dumper 的示例数据。在这种情况下,我想在四个不同的地方更改数据。我一直在处理这个问题,只是无法弄清楚....任何帮助表示赞赏。
$VAR1 = {
'results' => [
{
'admin' => 'DUMMY DATA',
'object' => 'DUMMY DATA',
'ifDescr' => 'DUMMY DATA',
'total_device' => {
'null' => '1'
},
'ifIndex' => 'DUMMY DATA',
'oper' => 'DUMMY DATA',
'percent_online' => 'DUMMY DATA',
'device_offline' => {
'null' => '1'
},
'dataflow' => 'DUMMY DATA',
'Map' => 'DUMMY DATA',
'ifdevice' => 'DUMMY DATA',
'device_online' => 'DUMMY DATA'
},
{
'admin' => 'DUMMY DATA',
'object' => 'DUMMY DATA',
'ifDescr' => 'DUMMY DATA',
'total_device' => {
'null' => '1'
},
'ifIndex' => 'DUMMY DATA',
'oper' => 'DUMMY DATA',
'percent_online' => 'DUMMY DATA',
'device_offline' => {
'null' => '1'
},
'dataflow' => 'DUMMY DATA',
'Map' => 'DUMMY DATA',
'ifdevice' => 'DUMMY DATA',
'device_online' => 'DUMMY DATA'
}
]
};
【问题讨论】:
-
您现在有两个不同的答案来解释这个问题。澄清一下,您是否只在结果中哈希的特定级别寻找 null => 1,或者您是否可以在哈希中的哈希中找到 null => 1 ...在结果中的哈希中?即,是否需要递归检查?
标签: perl perl-data-structures hash-reference