xml½âÎöµÄÒ»¸öÎÊÌâÇó½Ì
һС¶Î´úÂ룺#!/usr/local/bin/perl
use XML::Parser;
my $parser = new XML::Parser;
$data=$parser->parsefile(¡®data.xml¡¯);
$parser->setHandlers( Start => \&startElement,
End => \&endElement,
Char => \&characterData,
Default => \&default);
sub startElement {
my( $parseinst, $element, %attrs ) = @_;
SWITCH: {
if ($element eq "article") {
$count++;
$tag = "article";
print "Article $count:\n";
last SWITCH;
}
if ($element eq "title") {
print "Title: ";
$tag = "title";
last SWITCH;
}
.......................
.......................
ÕâÀïµ÷ÓÃÁ˹¹Ô캯Êýnew£¬ÄÇôº¯Êý½«·µ»ØÒ»¸öÒýÓÃ(¶ÔÏó)£¬¸ÃÒýÓøúdata.xml×÷ΪparsefilµÄÁ½¸ö²ÎÊý£¬parsefileileº¯ÊýµÄ×÷ÓÃÔÚÕâÀïµ½µ×ÊÇʲô£¿£¿ÎÒÏëÊDz»ÊǰÑxmlÎļþÊý¾Ý¸³¸ø¼´¶ÔÏó£¿
È»ºóÊÇ×Ô¶¨ÒåµÄ¼¸¸öº¯Êý£¬ÀýÈç startElement £¬Æä²ÎÊýÓÐ$parseinst£¬ËüÓ¦¸ÃÊÇ$parser °Ñ£¬µ«Êµ¼Ê´úÂëÖÐû³öÏÖËü£¬¶ø½ö½öÊÇ$element£¬ËùÒÔÎÒÏëÎÊÕâ¸ö²ÎÊý$parser ÓÐʵ¼ÊÒâÒåô£¿ ÎÒÏë¿Ï¶¨ÓУ¬ÒòΪµ÷ÓðüXML::ParserÀïÃæµÄ·½·¨£¨º¯Êý£©Ê±£¬º¯ÊýµÄµÚÒ»¸ö²ÎÊýÓÐÖÖÇé¿ö£¨Ðé·½·¨£©ÊǶÔÏ󣬵«ÔõôÌåÏÖÁË£¬
Ò³:
[1]