Je souhaiterai effectuer une tâche qui me paraît simple, et pourtant je ne vois pas trop comment la réaliser :
J'ai une (grosse) liste de fichiers XML qui respectent tous un schéma XSD.
Problème, il va bientôt y avoir un changement du XSD qui supprimera une balise.
J'aimerai donc passer tous ces fichiers à la moulinette pour supprimer cette balise obsolète.
Mais comment faire ?
- Utiliser une feuille de style XSLT ?
- Ecrire un programme ( Java, Perl, ... ) ?
- Obi wan kenobi ?
Je vous remercie d'avance pour vos conseils éclairés
# Re
Posté par -=[ silmaril ]=- (site web personnel) . Évalué à 2.
si c'est juste une suppression sans reorganisation speciale,
sed fera l'affaire:
for i in /path/to/xml/files/*; do
echo processing $i
sed -ibak -e 's/<\/?labalise>//g' $i
done
yop
[^] # Re: Re
Posté par Mat (site web personnel) . Évalué à 1.
[balise1]
[balise2]blablabla[/balise2]
[balise3]coin[/balise3]
[/balise1]
[balise1]
[balise2]blablabla[/balise2]
[balise3]coin[/balise3]
[/balise1]
A mon avis la simple regexp n'est pas suffisante, parce qu'en admettant que [balise1] ne contienne que [balise3] j'aimerai bien aussi la virer, puisqu'elle ne contiendra plus rien.
PS : j'ai remplacé les signes supérieurs/inférieurs des balises par des crochets, histoire qu'on y voit quelque chose
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.