URL: https://linuxfr.org/forums/programmation-perl/posts/parser-des-doc-xml-en-perl Title: Parser des doc XML en Perl Authors: kowalsky Date: 2006年03月20日T14:10:20+01:00 Tags: Score: 0 Bonjour, J'essaye desperement de poster un bout de code, et je n'y arrive pas, comment faire pour poster du code, y compris avec des "plus grnad que" et "plus petit que"... un exemple de ce que ça me donne... Bonjour à tous. J'ai fais un script qui sauvegarde la configuration des equipements reseaux du site sur lequel je boss. Il donne des fichiers comme ça: salle server 18 suresnes/e/e4 cisco internetwork operating system software ios (tm) c2900xl software (c2900xl-c3h2s-m), version 12.0(5)wc8, release software (fc1) copyright (c) 1986-2003 by cisco systems, inc. compiled thu 19-jun-03 13:09 by antonino 151 days, 23:34:20.44 deus <int-1> vl1 </int-1> <int-2> fa0/1 raoul </int-2> <int-3> fa0/2 raymond </int-3> <int-4> fa0/3 roger </int-4> <int-5> fa0/4 rener </int-5> <int-6> fa0/5 remi </int-6> <int-7> fa0/6 </int-7> J'ai quelque probleme pour le parser. je recupere les info de chaque champs comme ça: foreach ( @docxml ) { if ( "\L$_" =~ m/\<int-/ ) { $var = $' ; $var =~ s/>// ; chomp $var ; $mib = $var ; $int = $var ; print "mib : $mib\n" ; } sub extract { #foreach (@_) { print "$_\n" } my $ligne = $_[0] ; my $par = $_[1] ; if ( "\L$ligne" =~ m/\<$par\>/ ) { $var = $' ; $var =~ s/\<\/$par\>//g ; chomp $var ; $var = $var; } } extract ( "$_" , 'type' ) ; extract ( "$_" , 'descr' ) ; extract ( "$_" , 'vln' ) ; extract ( "$_" , 'spd' ) ; extract ( "$_" , 'hostnm' ) ; extract ( "$_" , 'sysloc' ) ; extract ( "$_" , 'sysupt' ) ; $deck = extract ( "$_" , 'sysdsc' ) ; print "deck de boucle : $deck\n"; } Mais le probleme que j'ai, c'est que je n'arrive pas à faire: -Donne moi tout ce qui est entre et , y compris les retours chariot. Je me rend bien compte que ma solution est bancale... Comment faite vous, pour epelucher vos fichier xml...?

AltStyle によって変換されたページ (->オリジナル) /