Renomage par lot supprimer les x premiers carractères

Questions générales en Français

Moderators: XnTriq, helmut, xnview

Bertrand RADISSON
Posts: 2
Joined: Wed Apr 24, 2024 8:16 am

Renomage par lot supprimer les x premiers carractères

Post by Bertrand RADISSON »

Bonjour,
je ne trouve pas comment renommer mes fichiers en supprimant les 12 premiers caractère de chaque fichiers (ajouté par erreurs la date sous forme "aaammjj_hhmmss" qui n'était pas les bonnes dates, car avant mise à jour des dates pour passage à l'heure d'été). Exemple, renommer 20240420_152545_P1500.jpg , 20240421_162545_P1505.jpg en P1500.jpg , P1505.
Cela me permettra de renomer mes photos une fois les dates mise à jour, avec les super fonction de renommage par lot de cette merveilleuse application...
Merci d'avance.
User avatar
michel038
XnThusiast
Posts: 1381
Joined: Tue Sep 27, 2016 8:18 am
Location: France

Re: Renomage par lot supprimer les x premiers carractères

Post by michel038 »

Je n'ai pas ma doc sous la main, mais de mémoire je dirais qu'il faut faire "remplacer", en activant "expression régulière" .

Dans les caractères à remplacer on met ^ pour marquer le début, puis [0-9]{8} pour les 8 premiers chiffres, puis _ , puis [0-9]{6} , puis _
Ça fait
^[0-9]{8}_[0-9]{6}_
sans espaces
Avant de valider, vérifiez l'aperçu du résultat au cas où je me serais trompé ...

La réponse la plus simple : enlever "brutalement" les 16 premiers caractères :
^.{16}
( le point est un caractère joker)

Et en plus risqué, pour le fun :
.*_
( .* tous les caractères, jusqu'au dernier _ car regexp est "gourmand")
Bertrand RADISSON
Posts: 2
Joined: Wed Apr 24, 2024 8:16 am

Re: Renomage par lot supprimer les x premiers carractères

Post by Bertrand RADISSON »

Désolé de ne pas avoir réagit plus tôt, je profitais des dernières neiges...
Merci pour ta réponse, très clair et tout à fait adapté.
Saurais tu ou je peux trouver de la doc ou un guide pour l'utilisation des "expression régulière", je ne trouve rien spécifique à XnView
User avatar
michel038
XnThusiast
Posts: 1381
Joined: Tue Sep 27, 2016 8:18 am
Location: France

Re: Renomage par lot supprimer les x premiers carractères

Post by michel038 »

Il existe quelques variantes de Regexp, selon les logiciels où il est implanté. C'est indépendant de xnview. La doc est surtout en anglais, à trouver sur le net...
Même si on se trompe de version de syntaxe, après quelques essais on finit par réussir, elles sont toutes assez similaires.

J'ai mis quelques rudiments dans ma page tuto xnviewmp
https://orchisere.fr/logiciels/html/xnviewmp.htm
, (chercher regex avec ctrl F)
User avatar
chrisncy
Posts: 156
Joined: Wed Jan 29, 2020 9:49 am
Location: Nancy, France

Re: Renomage par lot supprimer les x premiers carractères

Post by chrisncy »

Bonjour,
Dans le même ordre d'idée, j'ai besoin d'une petite aide aussi concernant les regex

Mes fichiers sont nommés ainsi (exemple)
20240507-1532-L_Isle_sur_le_Doubs
20240507-1533-L_Isle_sur_le_Doubs
20240507-1534-L_Isle_sur_le_Doubs

Je souhaite importer le nom du fichier sans la date ni le numéro, dans le champ titre des métadonnées
J'utilise : {Filename [15-]}
Cela fonctionne très bien, j'obtiens : L_Isle_sur_le_Doubs
Mais j'aimerais en même temps remplacer les underscores par des espaces et obtenir cette chaîne de caractère : L Isle sur le Doubs

J'ai bien essayé ce qui est décrit plus haut, mais j'ai du oublié un truc, car le résultat n'est pas là... :-(

Merci par avance
User avatar
michel038
XnThusiast
Posts: 1381
Joined: Tue Sep 27, 2016 8:18 am
Location: France

Re: Renomage par lot supprimer les x premiers carractères

Post by michel038 »

Je n'ai pas l'impression qu'il soit possible d'utiliser les regexp dans la fonction Métadonnée>Transférer ...

Et je ne sais pas à quoi correspond la syntaxe [15-] , mais ça marche
User avatar
chrisncy
Posts: 156
Joined: Wed Jan 29, 2020 9:49 am
Location: Nancy, France

Re: Renomage par lot supprimer les x premiers carractères

Post by chrisncy »

En effet, ce n'est pas regexp... j'ai mélangé
mais j'avais trouvé la syntaxe dans ce sujet :
viewtopic.php?p=170432#p170432

C'est vraiment pratique.
et si je parvenais à supprimer les caractères "_" se serait top...

Bonne journée
User avatar
michel038
XnThusiast
Posts: 1381
Joined: Tue Sep 27, 2016 8:18 am
Location: France

Re: Renomage par lot supprimer les x premiers carractères

Post by michel038 »

Vous pouvez le faire avec "Outils > Ouvrir avec" en faisant appel à ExifTool

Methode pour Windows :
-Outils > Ouvrir avec" > Configurer les programmes > Ajouter
- parcourir et repérer l'emplacement de ExifTool et cliquez-le (... il est dans le dossier d'install de XnViewMP, dossier AddOn )
- vous obtenez l'icone d'ExifTool dans la 1e colonne... ajoutez-y un nom , Name2Caption par exemple
- double cliquez dans la colonne Arguments et ajoutez

Code: Select all

-k -L -overwrite_original -IPTC:Caption-Abstract<${Basename;s/^.{15}//;tr/_/" "/}

Utilisation
Sélectionnez des fichiers, Clic droit, Ouvrir avec , Name2Caption


Explication
-k c'est pour tenir la fenêtre ExifTool ouverte et lire le compte rendu.
-L gère les caractères Latins
-overwrite_original évite la création de copies des originaux (.bak)

-IPTC:Caption-Abstract C'est le champ cible (Légende iptc) avec un tiret et le symbole < pour l'écrire
(pour xmp, c'est -XMP:Description )

${champ source;regexp;regexp} c'est deux traitements regexp sur un champ source :

Basename c'est le nom de fichier sans extension qui est la source à traiter (nom de fichier avec extension c'est Filename)
le premier traitement s/^.{15}// c'est substituer les 15 premiers caractères par "rien du tout" entre les deux /
le traitement suivant tr/_/" "/ c'est traduire chaque _ par un espace (entre guillemets)
User avatar
chrisncy
Posts: 156
Joined: Wed Jan 29, 2020 9:49 am
Location: Nancy, France

Re: Renomage par lot supprimer les x premiers carractères

Post by chrisncy »

ok, merci d'avoir pris du temps pour m'expliquer.
Le début de la syntaxe fonctionne (le nom du fichier est bien recopié), mais le remplacement des "_" par des espaces ne se fait pas
Je vais explorer...
Cordialement

EDIT : çà y est c'est OK
J'avais fait une erreur de copie.
Merci beaucoup