IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

aide expression régulière


Sujet :

Python

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2010
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 75
    Points : 42
    Points
    42
    Par défaut aide expression régulière
    bonjour à tous,

    ça fait quelques jours que je tente de faire une expression régulière sans vraiment y parvenir.

    voici ce que je souhaite:

    si je rentre:


    0.10000 je veux en sortie 0.1
    0.01000 je veux en sortie 0.01
    0.001000 je veux en sortie 0.001
    ...

    voici mon code actuel: qui gère bien le cas 0.01 et 0.001 mais pas 0.1:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    filter=re.findall("(0+\.[0-1]+1)", val)
    j'ai bien tenté avec un ou mais ça ne fonctionne pas.
    Je vous remercie pour vos conseils.
    Cdt

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Bonjour.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    >>> float('0.10000')
    0.1
    >>>

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2010
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 75
    Points : 42
    Points
    42
    Par défaut merci
    bonjour Arioch

    Merci beaucoup c'est édifiant de simplicité !
    merci pour ton aide

  4. #4
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 953
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 953
    Points : 9 283
    Points
    9 283
    Par défaut
    hello,
    sinon avec une expression régulière tu t'en sors comme ceci par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    import re
    val = "0.10000"
    filter=re.findall("0+\..*[1-9]", val)
    print(filter)
    le motif correspond à : chercher 0. et aller jusqu'à un chiffre qui n'est pas 0

    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  5. #5
    Membre du Club
    Inscrit en
    Septembre 2010
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 75
    Points : 42
    Points
    42
    Par défaut
    Bonjour Jp,
    Merci pour ta réponse, merci à tous les deux ça ma bien aidé !
    bonne journée à vous

  6. #6
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 689
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 689
    Points : 30 983
    Points
    30 983
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par jurassic pork Voir le message
    le motif correspond à : chercher 0. et aller jusqu'à un chiffre qui n'est pas 0
    Allez allez, à moi de jouer...
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    import re
    val = "0.10000"
    filter=re.sub("0{1,}$", "", val)
    print(filter)
    Le principe: remplacer la plus longue suite de "0" terminant la chaine par chaine vide...

    PS: je crois qu'on peut écrire aussi "0+$" mais je n'ai pas l'habiitude du "+"...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Aide Expression Régulière
    Par pouss dans le forum Langage
    Réponses: 3
    Dernier message: 31/03/2011, 15h49
  2. aide expression régulière
    Par neg12 dans le forum Langage
    Réponses: 7
    Dernier message: 07/03/2011, 16h39
  3. aide expression régulière
    Par viny dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 15/06/2008, 18h55
  4. aide expression régulières
    Par mehdiing dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 11/04/2008, 15h02
  5. Aide expression régulière
    Par As2piK dans le forum Collection et Stream
    Réponses: 9
    Dernier message: 02/10/2007, 10h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo