Trouver et remplacer par une nouvelle date dans le format notepad++

j'ai un fichier avec quelques milliers de lignes à ajouter à une base de données MySQL. Il y a des valeurs de date dans les lignes qui sont dans le jj-mm-aaaa mais j'en ai besoin pour être dans le format aaaa-mm-jj.

E. g., '11-04-2010', doit devenir '2010-04-11', dans chaque ligne.

Est-il une façon simple de le faire dans notepad++ ou un autre éditeur de texte?

20
demandé sur ЯegDwight 2010-12-02 05:28:36

3 réponses

Vous pouvez le faire avec Textpad:

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

Remplacer: \3-\2-\1

30
répondu crnlx 2010-12-02 02:36:39

pour vous assurer que vous ne réordonnez que les mauvais formats (dans le cas où vous avez des formats mixtes provenant de la fusion de bases de données), utilisez ceci:

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

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

Dans une regex capable éditeur de texte comme notepad++, le remplacer par ceci:

--

Dans un outil comme libre office, vous devez le remplacer par ceci:

-- 

Edit: j'ai écrit un billet de blog à propos de ce qu'il semble être une commune problème: http://bytethinker.com/blog/correct-date-format-with-notepad-and-regex

7
répondu Guido Gallenkamp 2012-10-06 01:28:13

Utilisé Notepad++ pour modifier mm/jj/aaaa jusqu'en aaaa/mm/jj dans plusieurs lignes d'un fichier texte. Script a été enregistré en macro pour le fichier suivant.

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

0
répondu Wilf Morrison 2018-02-10 18:52:30