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 :

Un problème de regex


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Par défaut Un problème de regex
    Etant toujours aussi nul en regex, je fais appel aux personnes compétentes pour m'aider à résoudre le problème suivant.

    J'ai le texte suivant : " ']-5;3[' u '[-4;3]' u (']4;7]' n '[10;cos(13)[') u '{13}' ".

    Je voudrais récupérer et remplacer les intervalles ']-5;3[' , '[-4;3]' , ']4;7]' , '[10; cos(13)[' et '{13}' par 1 , 2 , 3 , 4 et 5 en gardant bien entendu la trace des remplacements.

    Les intervalles sont du type ']a;b[' , '[a;b[' , ']a;b]' , '[a;b]' , ou '{a}' . Faire attention aux apostrophes. Elles permettent de taper quelque chose comme '[10;cos[13+pi][' sans se lancer dans du parsing compliqué.

    Toute info. est la bienvenue.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 119
    Par défaut
    Voila ce que je propose:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    sep=r"[\[\]{}]"
    group="('%s[^']*%s')"%(sep,sep)
     
    a=" ']-5;3[' u '[-4;3]' u (']4;7]' n '[10;cos(13)[') u '{13}' "
    re.split(group,a)
    [' ', "']-5;3['", ' u ', "'[-4;3]'", ' u (', "']4;7]'", ' n ', "'[10;cos(13)['", ') u ', "'{13}'", ' ']

Discussions similaires

  1. [Java] Problème de Regex
    Par spk4ever dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 28/08/2006, 10h51
  2. Problème avec Regex
    Par trihanhcie dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/07/2006, 14h50
  3. problème de regex
    Par lanfeust42 dans le forum Langage
    Réponses: 11
    Dernier message: 12/07/2006, 15h32
  4. Problème avec RegEx et une Query string
    Par Erakis dans le forum Langage
    Réponses: 6
    Dernier message: 08/11/2005, 15h48
  5. Problème de Regex ... avec un point
    Par bugalood dans le forum Langage
    Réponses: 2
    Dernier message: 29/05/2005, 10h26

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