Sujet : Re: Aide Utomator
De : om+news (at) *nospam* miakinen.net (Olivier Miakinen)
Groupes : fr.comp.os.mac-os.x fr.comp.lang.regexpSuivi-à : fr.comp.lang.regexpDate : 14. Aug 2022, 11:29:09
Autres entêtes
Organisation : There's no cabale
Message-ID : <tdaipl$1t5g$1@cabale.usenet-fr.net>
References : 1 2 3 4 5
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0 SeaMonkey/2.53.1
[diapublication avec suivi vers fr.comp.lang.regexp]
Bonjour,
Le 14/08/2022 à 12:04, Brice a écrit :
Le 13 août 2022 à 17:15, Jean-Pierre Kuypers a écrit :
[remplacer « (.*\d*.*) n°(\d*) » par « $2 $1 »]
>
Extra, je viens de tester et c'est merveiiillleeeuux,
Pourrais-je avoir des explications sur les .*\d et $1, $2 ?
Voici les explications détaillées sur ces expressions rationnelles
(regexp).
. = n'importe quel caractère
.* = n'importe quel caractère, n'importe quel nombre de fois
\d = un chiffre
\d* = n'importe quel nombre de chiffres
(...) = capture de la sous-chaîne
$1 = ce qu'il y avait dans le premier (...)
$2 = ce qu'il y avait dans le deuxième (...)
Reprenons l'exemple de Jean-Pierre :
nom prenoms 5678 ville n°1234.jpg
Je vais mettre en dessous de l'exemple ce qui est capturé par quoi :
nom prenoms 5678 ville n°1234.jpg
( .* \d* .* ) n°(\d*).jpg
Le $2 est donc "1234" tandis que le $1 est "nom prenoms 5678 ville",
d'où le résultat, sachant que le .jpg n'est pas traité par la regexp
et reste donc inchangé :
1234 nom prenoms 5678 ville.jpg
[Attention, j'ai positionné le suivi vers le groupe adapté aux
discussions sur les regexp, à savoir fr.comp.lang.regexp]
-- Olivier Miakinen