trier un fichier xml en perl

trier un fichier xml en perl - Perl - Programmation

Marsh Posté le 12-03-2008 à 13:37:16    

Salut,
 
Est-ce qu'il est possible de trier un fichier xml avec un module perl ?
 
Ex j'ai ceci :
 

Citation :

<top key="A22">
<name> paul </name>
<age>32</age>
</top>
<top key="A15">
<name> pierre</name>
<age>23</age>
</top>


 
en je veux cela, c'est à dire trier par key croissant

Citation :

<top key="A15">
<name> pierre</name>
<age>23</age>
</top>
<top key="A22">
<name> paul </name>
<age>32</age>
</top>


 
 
Merci
 

Reply

Marsh Posté le 12-03-2008 à 13:37:16   

Reply

Marsh Posté le 12-03-2008 à 13:38:46    

Je rouvre, j'ai mal lu, ce n'était pas un (vrai) doublon.
 
Sinon, le mieux c'est encore de farfouiller dans CPAN : http://search.cpan.org/search?quer [...] t&mode=all


Message édité par Elmoricq le 12-03-2008 à 13:53:33
Reply

Marsh Posté le 15-03-2008 à 09:09:16    

Bonjour,
 
si l'aspect xml n'est pas trop important (pas trop de souplesse), il est possible d'utiliser les regexp avec les options "sgm"

Code :
  1. my @tops_elements=();
  2. while ((my $enreg,my $key)=~m/(<top\s+key="([^"]+)"\s+>.*?<\/top> )/msg)){
  3.     push (@tops_elements, [$key,$enreg]);
  4. }


 
Après, il n'y a plus qu'à utiliser la fonction sort
 
PS: je ne l'ai pas testé, donc ya peut-être qq adaptations/corrections à faire...


Message édité par dreameddeath le 15-03-2008 à 09:10:10
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed