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 :

[regex] remplacer des caractères dans une chaine [Python 2.X]


Sujet :

Python

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    783
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 783
    Points : 437
    Points
    437
    Par défaut [regex] remplacer des caractères dans une chaine
    Bonjour, je cherche à faire un truc qui semble plutôt simple mais les expressions régulière n'étant pas mon fort, un peu d'aide serait le bienvenue

    J'ai une chaine de caractère formatée comme cela :
    [face]Arial[/face][size]-19[/size]

    et je souhaiterai remplacer le nombre de la taille par celui que je veux mais je bute


    Mes tentatives :
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    #sans rien echapper 
    font = "[face]Arial[/face][size]-19[/size]"
    reg  = r".*[size].*[\size]"
    s = re.sub(reg, "[size]-15\[\size]", font)
    print s # [size]-15\[\size]]
     
    #en echapant les [ ] et \
    font = "[face]Arial[/face][size]-19[/size]"
    reg  = r".*\[size\].*\[\\size\]"
    s = re.sub(reg, "\[size\]-15\[\\size\]", font)
    print s # [face]Arial[/face][size]-19[/size]



    Merci
    Le savoir est une arme alors soyons armés

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 241
    Points : 36 698
    Points
    36 698
    Par défaut
    Salut,

    quick and dirty:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> s = "[face]Arial[/face][size]-19[/size]"
    >>> re.sub('\[size\].*\[/size\]', '[size]10[/size]', s)
    '[face]Arial[/face][size]10[/size]'
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    783
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 783
    Points : 437
    Points
    437
    Par défaut
    merci bien
    Le savoir est une arme alors soyons armés

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

Discussions similaires

  1. [Notepad++] utiliser regex pour remplacer des caractères
    Par ilood dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 04/02/2007, 05h06
  2. Fonction qui remplace des caractères spéciaux
    Par ViRouF dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 07/08/2006, 11h24
  3. Remplacer des caractères
    Par James.T dans le forum C++
    Réponses: 3
    Dernier message: 11/02/2006, 19h56
  4. Réponses: 3
    Dernier message: 27/06/2005, 17h24
  5. Fonction permettant de remplacer des caractères
    Par PrinceMaster77 dans le forum ASP
    Réponses: 3
    Dernier message: 06/09/2004, 16h48

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