Numéro incrémentiel pour certaines balises dans XML Notepad ++
Oct 21 2020
J'ai un fichier XML avec les données suivantes
<Shipment>
<ShipmentReference>1453464536</ShipmentReference>
<ShipmentCode>2020IE</ShipmentCode>
</Shipment>
<Shipment>
<ShipmentReference>7896535784</ShipmentReference>
<ShipmentCode>2020IE</ShipmentCode>
</Shipment>
<Shipment>
<ShipmentReference>5674321985</ShipmentReference>
<ShipmentCode>2020IE</ShipmentCode>
</Shipment>
Je veux savoir s'il est possible de modifier uniquement la balise avec une valeur numérique incrémentielle, quelque chose comme ci-dessous
<Shipment>
<ShipmentReference>9999999001</ShipmentReference>
<ShipmentCode>2020IE</ShipmentCode>
</Shipment>
<Shipment>
<ShipmentReference>9999999002</ShipmentReference>
<ShipmentCode>2020IE</ShipmentCode>
</Shipment>
<Shipment>
<ShipmentReference>9999999003</ShipmentReference>
<ShipmentCode>2020IE</ShipmentCode>
</Shipment>
Je ne sais pas si nous pouvons utiliser l'éditeur de colonnes
Appréciez toute aide
Merci
Réponses
2 help-info.de Oct 21 2020 at 15:41
Je recommande d'utiliser un script ici. Installez le plugin Notepad ++ Python Script et exécutez le script Python ci-dessous:
# ------------------------------------
# https://community.notepad-plus-plus.org/topic/15318/replace-text-with-incremented-counter
# Thanks to Scott Sumner for portions of this code
# ------------------------------------
count = 9999999000
def calculate(m):
global count
count += 1
return '<ShipmentReference>' + str(count) + '</ShipmentReference>'
editor.rereplace('<ShipmentReference>([0-9]+)</ShipmentReference>', calculate);