salut,
J'ai un script perl qui me permet de me deplacer dans mon fichier xml
et de m'afficher toute les balises qui corresponde au path que je lui est indiqué
voici mon script
voila mon fichier XML
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #!/usr/bin/perl -w use XML::XPath; use XML::XPath::XMLParser; my $xp = XML::XPath->new(filename => 'client.xml'); my $cli = $xp->find('/root/client/nom/information'); foreach my $clip ($cli->get_nodelist) { print "FOUND\n\n", XML::XPath::XMLParser::as_string($clip), "\n\n"; }
et voila le resultat<?xml version="1.0" encoding="windows-1250"?>
<root>
<entreprise>some text</entreprise>
<info></info>
<client>
<nom name="paul">
<information valeur="Niveau" type="Bon"/>
<information valeur="Solvable" type="Mauvais"/>
</nom>
</client>
<client>
<nom name="albine">
<information valeur="Solvable" type="Bon"/>
</nom>
</client>
<client>
<nom name="Terence">
<information valeur="Niveau" type="Tres bon"/>
<information valeur="Solvable" type="Bon"/>
<information valeur="Ancien" type="Oui"/>
</nom>
</client>
</root>
il me retrouve bien les balises information mais ce que je souhaiterais et je ne sais pas si c'est possible , c'est de n'afficher seulement les balises information qui ont la valeur "Niveau" , en faite je voudrais cela à l'afffichageResultat
<information valeur="Niveau" type="Bon" />
Resultat
<information valeur="Solvable" type="Mauvais" />
Resultat
<information valeur="Solvable" type="Bon" />
Resultat
<information valeur="Niveau" type="Tres bon" />
Resultat
<information valeur="Solvable" type="Bon" />
Resultat
<information valeur="Ancien" type="Oui" />
Resultat
<information valeur="Niveau" type="Bon" />
Resultat
<information valeur="Niveau" type="Tres bon" />
Est ce que quelqu'un aurai une piste car je ne vois ou est ce impossible ?
Merci à tous
Partager