Salut tout le monde,
J'ai un script Perl que j'ai fait un peu à la "va-vite" et qui jusque maintenant fait bien son boulot mais j'ai à présent besoin de faire une update pour prendre en compte certaines tâches.
Le but du script est d'être lancé dans un répertoire et de rechercher tous les fichiers XSLT contenu dans celui-ci, de les lires ligne par ligne et d'éventuellement y apporter quelques modifs, notamment la suivante :
Ces fichiers XSLT sont créés avec un outils graphique et cet outils insert un include (ou plusieurs) dans le code. Le problème, est que ces includes contiennent le chemin absolu vers la librairie. Mon script doit donc le remplacer par un chemin relatif.
Par exemple ceci :Doit devenir ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part <xsl:include href="F:\IST\Office\Release 01.0 FXD \020 - Integration\Team\Libs\xsltsl-1.2.1\math.xsl"/>
Jusqu'ici, je recherchais simplement les includes et remplacait entièrement la ligne, ce qui me donnait une structure if pour chaque librairie possible. Mais on n'en avait pas beaucoup.
Code : Sélectionner tout - Visualiser dans une fenêtre à part <xsl:include href="JMIL\math.xsl"/>
Maintenant, ce n'est plus le cas et je voudrais donc trouver une façon propre et surtout correcte de faire ça. Il me semble que les regex seraient la meilleure façon de faire mais mes connaissances sont beaucoup trop limitées actuellement et je n'arrive pas à trouver un exemple qui soit assez proche de ce que je veux faire.
Un autre exemple, je pourrais avoir cette adresse-ci :[CODE]<xsl:include href="C:\UserTemp\Checkout\integration_layer\branches\dev\JMIL\xslt\TOFOML\MXML\JMIL\dates\functions\difference\date.difference.template.xsl"/>CODE]
A remplacer par :Voilà, désolé pour cette longue tartine. Merci pour votre temps à ceux qui seront allés jusqu'au bout et un tout tout grand merci à ceux qui pourront m'aider.
Code : Sélectionner tout - Visualiser dans une fenêtre à part <xsl:include href="JMIL\dates\functions\difference\date.difference.template.xsl"/>
Partager