我想使用解析XML文件Perl。我能夠使用XML :: Simple模塊來實現,但現在我想要開始使用XML :: XPath模塊,而不是使用XPath表達式。從我有限的知識中,我認爲XPath將使未來的解析更容易,對吧? 這裏的Perl代碼我到目前爲止:Perl,如何解析XML文件,xpath
use strict;
use warnings;
use XML::XPath;
my $file = "data.xml";
my $path = XML::XPath->new(filename => $file);
my $name = $path->find('/category/event/@name');
print $name."\n";
我的問題是我怎麼分隔每個name屬性(類別/事件/ @名),這樣我可以對每個I解析值測試。目前,我只是得到一大堆完整的解析數據,而我想要幾個可以測試的小字符串。我怎樣才能做到這一點?感謝:-)
你推薦'XML :: LibXML',因爲你應該知道它,或者因爲你認爲它比'XML的真正優勢: :XPath'?據我所知,後者工作正常。它也是純粹的Perl,它比LibXML慢,但可以在沒有外部庫的幫助下使用。 – Borodin 2012-03-11 02:33:03
那是一個超鏈接。遵循它。 – daxim 2012-03-11 02:46:54
@daxim感謝您的回覆。我試過它工作,但不是100%的我想要的方式。我的輸出是name =「attribute_value」,但我只想要attribute_value。有沒有辦法只輸出attribute_value而不使用name =「」? – liverpaul 2012-03-11 09:23:53