Réordonnance des colonnes dans un fichier texte
Oui, c'est possible avec Notepad++
, bien qu'il existe aussi des plugins qui le font. Une approche meilleure (plus robuste) pourrait être d'utiliser des outils de traitement de texte en ligne de commande, mais si vous avez besoin d'une solution rapide et simple, vous pouvez trouver cela ci-dessous:
En supposant votre entrée exacte (col1|col2|col3
, délimiteur de pipe, pas de pipe dans col2
):
Rechercher: (.*?)\|(.*?)\|(.*)
Remplacer: \1|\3|\2
ça fonctionne pour moi ici dans Notepad++
, version de janvier 2015. Un peu brut, mais ça marche.
Explication:
.*
- correspond à n'importe quel caractère (sauf un retour à la ligne), entre zéro et un nombre illimité de fois
.*?
- correspond à n'importe quel caractère (sauf un retour à la ligne) comme ci-dessus, de manière non avide (c'est-à-dire correspondre le moins possible)
(.*)
- des parenthèses simples dénotent un groupe de capture du dessus (à utiliser dans Remplacer comme par exemple \1
, \2
, \3
etc )
\|
- \
échappe le pipe (|
) pour le faire correspondre littéralement
\1|\3|\2
- imprime le 1er groupe correspondant, pipe, troisième groupe correspondant, pipe, deuxième groupe correspondant