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

Langage PHP Discussion :

Faire un remplacement conditionnel [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut Faire un remplacement conditionnel
    Bonjour

    Dans les critères de remplacement d'un regexp, est-ce possible de mettre des conditions ?

    Mon exemple : je capture 2 éléments dans mon pattern.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $pattern = '#type1=(.+);type2=(.+)#'
    Est-ce possible de faire l'équivalent de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(\\1 == \\2) { $replace = 'égalité entre \\1 et \\2'; }
    else { $replace = '\\1 est différent de \\2'; }
     
    $contents = preg_replace($patterns,$replace,$contents);
    Sinon, est-ce possible de trouver une ruse pour le faire, par exemple en utilisant l'array rempli par preg_match_all ?

    Merci de vos lumières et bon week end.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Citation Envoyé par guidav
    Sinon, est-ce possible de trouver une ruse pour le faire, par exemple en utilisant l'array rempli par preg_match_all ?
    Seulement en utilisant le tableau rempli par preg_match(_all) (et très certainement avec les fonctions PCRE utilisant une fonction de callback).


    Julp.

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

Discussions similaires

  1. Faire des remplacements dans un fichier texte
    Par DooSquare dans le forum C
    Réponses: 6
    Dernier message: 06/07/2007, 19h22
  2. Réponses: 2
    Dernier message: 04/01/2007, 11h37
  3. [Tableaux] Faire un remplacement dans une chaîne
    Par méphistopheles dans le forum Langage
    Réponses: 4
    Dernier message: 19/12/2006, 22h31
  4. Réponses: 4
    Dernier message: 04/07/2006, 17h37
  5. Réponses: 7
    Dernier message: 26/03/2006, 17h46

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