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 :

Extraire info d'une chaine de caractère avec module re [Python 3.X]


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur validation
    Inscrit en
    Juin 2012
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur validation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juin 2012
    Messages : 89
    Par défaut Extraire info d'une chaine de caractère avec module re
    Bonjour,
    je demande de l'aide car je n'arrive pas trop à comprendre le module re, surtout pour un obtenir différents champs d'une chaine de caractère.

    J'ai une chaine de caractère comme celle-ci:

    BN71A[20x2]A[20x2]

    je voudrais extraire les paramètres en couleur séparément. La chaine commence les autres caractères [] et multiplié sont délimitent les les paramètres.
    Détails:
    BN: ne change pas
    71 :nombre
    A : [A-Z]
    [ : ne change pas
    20 :nombre
    x: ne change pas
    2 : nombre
    ] :ne change pas
    A : [A-Z]
    [ : ne change pas
    20 :nombre
    x: ne change pas
    2 : nombre
    ] :ne change pas

    Merci.

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Proposition:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Chaine = "BN71A[20x2]A[20x2]"
     
    motif = r"^BN([0-9]+)([A-Z])\[([0-9]+)x([0-9]+)\]([A-Z])\[([0-9]+)x([0-9]+)\]$"
     
    res = re.match(motif, chaine)
    if res is not None:
        for i in range(1,8):
            print(res.group(i))
    else:
        print("Non trouvé")
    Résultat:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    71
    A
    20
    2
    A
    20
    2

  3. #3
    Membre confirmé
    Homme Profil pro
    Ingénieur validation
    Inscrit en
    Juin 2012
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur validation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juin 2012
    Messages : 89
    Par défaut
    J'ai trouvé, , il suffit de séparer les champs de recherche par des ().

    Citation Envoyé par tyrtamos Voir le message
    Merci beaucoup, j'ai trouvé en même temps, désolé de t'avoir fait chercher pour rien

  4. #4
    Membre Expert
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    923
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 923
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par Toug19 Voir le message
    J'ai trouvé, , il suffit de séparer les champs de recherche par des ().
    Bonjour,
    Dit comme ça, on dirait une astuce magique.

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 02/03/2020, 18h24
  2. Réponses: 17
    Dernier message: 10/02/2015, 08h47
  3. Réponses: 5
    Dernier message: 22/09/2014, 13h55
  4. Lecture d'une chaine de caractère avec fgets
    Par mayoouketchup dans le forum Langage
    Réponses: 9
    Dernier message: 22/12/2005, 16h17
  5. Réponses: 2
    Dernier message: 06/12/2002, 07h50

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