2010-12-02 2 views
16

J'ai un fichier contenant quelques milliers de lignes à ajouter à une base de données MySQL. Il y a des valeurs de date dans les lignes qui sont au format jj-mm-aaaa mais j'ai besoin qu'elles soient dans le format aaaa-mm-jj.Rechercher et remplacer par le format de date réorganisé dans le bloc-notes ++

Par exemple, '11-04-2010', doit devenir '2010-04-11', dans chaque ligne.

Existe-t-il un moyen simple de le faire dans notepad ++ ou un autre éditeur de texte?

Répondre

26

Vous pouvez le faire avec Textpad:

Recherche: ([0-9]+)-+([0-9]+)-+([0-9]+)

Remplacer: \ 3- \ 2- \ 1

+5

Fonctionne également dans le bloc-notes ++. – TechTravelThink

+0

@ StartClass0830: Cool. Je n'étais pas sûr. – crnlx

+0

Oui, oui, merci –

5

Pour vous assurer que vous ne réorganisez mauvais formats (dans le cas où vous avez mélangé formats de bases de données qui fusionnent), utilisez ceci:

([0-9]{2})-+([0-9]{2})-+([0-9]{4}) 

Ceci recherche (quatre chiffres, tiret, deux chiffres, un tiret, deux chiffres).

Dans un éditeur regex capable comme Notepad ++, remplacez-le par:

Dans un outil comme bureau de libre
\3-\2-\1 

, vous avez besoin de le remplacer par ceci:

$3-$2-$1 

Edit: je l'ai écrit un article de blog à ce sujet car il semble être un problème commun: http://bytethinker.com/blog/correct-date-format-with-notepad-and-regex

0

Utilisé Notepad ++ pour changer mm/jj/aaaa en aaaa/mm/jj en plusieurs lignes de un fichier texte. Le script a été enregistré en tant que macro pour le fichier suivant.

Rechercher: ([0-9] {2})/+ ([0-9] {2})/+ ([0-9] {4}) Remplacer: \ 3/\ 1/\ 2

Questions connexes