我有一個對象,我印有Data::Dumper:如何遍歷這個複雜的數據結構的一部分?
$VAR1 = {
'record' => [
{
'text' => 'booting kernel',
'version' => '2',
'iso8601' => '2011-06-23 11:57:14.250 +02:00',
'event' => 'system booted',
'modifier' => 'na'
},
{
'text' => 'successful login',
'subject' => {
'sid' => '999',
'uid' => 'user',
'audit-uid' => 'user',
'tid' => '0 0 unknown',
'ruid' => 'user',
'rgid' => 'gsp',
'pid' => '999',
'gid' => 'gsp'
},
'version' => '2',
'iso8601' => '2011-06-23 11:58:00.151 +02:00',
'event' => 'login - local',
'return' => {
'retval' => '0',
'errval' => 'success'
},
'host' => 'unknown'
},
],
'file' => {
'iso8601' => '2011-06-23 11:57:40.064 +02:00'
}
};
我想打印的每個值導航這樣的哈希值。對於我所理解的是具有兩個鍵(記錄,文件)的散列和記錄到散列數組的散列。
您能否幫助達成這種結構的每個價值?
我想:
my @array=$VAR1{'record'};
foreach (@array) {
print $_{'text'};
}
...但它不工作。
如果你不知道該結構的深度使用遞歸...遞歸到它,每次檢查與ref如果你有一個哈希或ARRAY參考 – snoofkin