Aide recherche avec notepad++ [OK] - Logiciels - Windows & Software
Marsh Posté le 09-10-2019 à 14:23:21
Notepad++ ne sait pas ce qu'est un fichier XML.
Pour lui c'est du texte simple, il ne peut donc pas se référer à sa structure.
Le seul moyen de s'en sortir c'est si ce qu'il y a avant ou après ce que tu cherches est connu et fixe.
Il suffit alors d'étendre la recherche en incluant ces éléments connus ("<nom>truc</nom>" dans ton exemple).
Sinon il faut utiliser un logiciel spécialement conçu pour travailler avec des XML.
Marsh Posté le 09-10-2019 à 14:55:24
avec une recherche par regular expression ?
genre :
"<service>.*<code>1234</code>.*</service>" ?
Marsh Posté le 09-10-2019 à 15:00:05
sinon il y a le basic : recherche par expression reguliere "<service>|<code>1234</code>"
et tu click sur "Find all in current document" la fenêtre du bas t'affichera toutes les lignes trouvé, double click dessus et jackpot:
Marsh Posté le 09-10-2019 à 15:54:10
Merci à vous deux pour vos réponses
- malheureusement je ne peux inclure des données fixes dans la recherche, car il n'y en a pas dans mon utilisation réelle
- j'ai essayé la recherche par regular expression du type <service>.*<code>1234</code>.*</service>, mais ça me dit qu'il ne trouve pas. Sauf si je mets tout à plat, en enlevant les espaces et les fins de ligne. Peut être un pb de syntaxe de l'expression ?
- sinon la solution <service>|<code>1234</code> permet de me dépanner
:-)
-
Marsh Posté le 09-10-2019 à 16:54:48
Je ne sais pas si je vais m'en sortir mieux avec xml notepad
Je vais creuser
Mais en tous cas je viens de l'installer, ça va bien me servir déjà en dehors de ce pb de recherche
merci
Marsh Posté le 09-10-2019 à 17:39:11
Pour moi le plus simple serait de convertir le XML en json.
Le json est bien plus facilement "parcourable" par tout un tas de logiciels ou de libs (jq, jmespath, lib python, etc ...)
Marsh Posté le 10-10-2019 à 08:45:15
rogntudjuuu a écrit :
:-) |
professionnellement parlant, j'utilise cette solution tout les jours, même si c'est pas sur du XML pure
(sur un fichier CPL des proxySG@Symantec/BlueCoat pour l'histoire complète )
Marsh Posté le 09-10-2019 à 10:58:51
Bonjour,
Avec notepad++, je voudrais rechercher dans un fichier xml, une valeur contenue dans une balise
Par exemple la balise s'appelle code et je recherche la valeur 1234
Je pourrais donc chercher la chaîne <code>1234</code>
Mais le pb est que cette balise est présente à plusieurs endroits, et que je ne veux par exemple la trouver que lorsqu'elle est dans la balise de niveau supérieur <service>
...
<batiment>
...
<nom>blabla</nom>
<code>1234</code>
...
</batiment>
...
<service>
...
<nom>truc</nom>
<code>1234</code>
...
</service>
...
Y a t il un moyen de faire ça ?
J'ai essayé un truc du genre rechercher <service>*<code>1234</code>*</service> mais ça ne marche pas
Merci
Message édité par rogntudjuuu le 09-10-2019 à 16:55:19