plop à tous !
voici mon problème :
j'ai des chaines de caractères de ce style :
dans lesquelles je veux récupérer uniquement les nombres. Alors j'avoue que je sais pas vraiment (voir pas du tout) comment faire donc j'ai pensé à faire une regex mais je sais pas trop comment la construire...ramène 1.416.818 unité(s) d´acier, 589.864 unité(s) de silicium et 513 unité(s) de deutéride
le problème principal c'est qu'à partir du moment où il y a un point, il y a forcément 3 chiffres derrière mais déjà, on n'est pas obligés d'avoir de point et ensuite, il peut y en avoir plusieurs comme montré dans mon exemple.
donc dans ma regex il faut que je traduise :
le fait que j'ai 1 ou 3 chiffres au début
le fait que j'ai un . ou pas et le fait que j'ai encore 3 chiffres[0-9]{1,3}
et que ce point et ces chiffres peuvent y être 0 ou n fois et c'est là que je coince !
Code : Sélectionner tout - Visualiser dans une fenêtre à part [\.]?[0-9]{3}
donc j'ai pensé à des trucs style
Code : Sélectionner tout - Visualiser dans une fenêtre à part [0-9]{1,3}[\.]?[\.0-9{3}]*
Code : Sélectionner tout - Visualiser dans une fenêtre à part [0-9]+[\.]?[\.0-9{3}]*mais comme vous vous en doutez, rien de tout ça ne fonctionne ^^ selon les regex, ça m'extrait bien mes nombres mais si je fais quelque chose du style 1.1..4444.123, ça me les extrait aussi donc y'a un soucis ^^
Code : Sélectionner tout - Visualiser dans une fenêtre à part [0-9]{1,3}[[\.]?[0-9]{3}]*
voilou, si vous avez des idées, j'suis ouvert -_-'
Partager