Bonjour,
Je dois traiter un grand nombre de fichiers (des .sql). On me les a fourni tels quels. Je dois réimporter des lignes de ce format :
(13536, 2011, 0, 0, 0, 0, 0, 0, 0, 177,18, 0, 0, 22,17, 0, 0, 0, 0, 0, 170.31, 0, NULL, NULL, NULL, NULL)
Problème : lors de l'export, la virgule a été choisie comme séparateur, et séparateur de champ. Très pratique à retraiter... Je me retrouve donc avec des fichiers impossibles à importer, car chaque virgule est considérée comme un séparateur de champs, et ma ligne en contient donc trop par rapport aux champs de la table.
La seule différence vient des espaces : avec un espace, c'est un nouveau champ ; sans espace, d'un chiffre avec décimale.
Dans mon exemple, je voudrais donc remplacer "177,18" et "22,17" par "177.18" et "22.17". Sans toucher aux autres virgules, qui sont suivies par un espace.
J'ai essayé diverses expressions régulières, à base de [\d]+ et [\s], sans aucun résultat probant.
Qui aurait une idée pour arriver à remettre d'aplomb mes fichiers ? A la main j'en ai pour des semaines
Merci pour votre aide.
Partager