我通過XML::Simple
在Perl中測試不同類型的哈希值?
my $xml = new XML::Simple;
my $detail= $xml->XMLin($xml_local);
寫一個小Perl腳本,通過一個XML文件去有時,一個元素在XML內容是空的。
當在XML中的一個元素沒有內容,我嘗試使用打印出來的內容:
print $detail->{Parsing}->{Through}->{XML}->{ElementContents}
我得到的輸出:
HASH(0x18948c4)
... ...或類似的東西......唯一的區別是()之間的字符
我想測試內容是否爲空,並將該變量默認爲別的東西 - 也許''
或""
- 除了散列引用/地址/不管是什麼。
我嘗試這樣做,但得到的是它不是一個數組引用一個錯誤:
print $detail->{Parsing}->{Through}->{XML}->{ElementContents}[0]
UPDATE
所述元件中的一個的輸出使用Data::Dumper
:
'something' => [
{
'somedetail' => '',
'somedetail' => '',
'somedetail' => 'http://www.google.com'
'somedetail' => 'google',
'somedetail' => '1',
'somedetail' => '01/21/02'
},
如何使用Perl測試這些''
空字符串?除非啓用某些過濾,否則它們將返回爲HASH(0x18948c4)
。
我也用`Data :: Dumper`打印出了數據結構 - 'Element'=> {content}結果爲`'Element'=> {}` – CheeseConQueso 2010-11-25 00:38:28
也是,你錯過了第一個'{`打印語句 – CheeseConQueso 2010-11-25 00:40:31