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 :

Regex sur chaine1:chaine2=chaine3


Sujet :

Langage PHP

  1. #1
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Par défaut Regex sur chaine1:chaine2=chaine3
    Bonjour,
    je cherche à réaliser une regex qui permet de me formater une chaine comme suivant

    si la chaine correspond au pattern chaine1:chaine2=chaine3 alors j'aimerais réussir à avoir chaine1=chaine3

    j'avoue que je ne suis pas très fort en expression régulière si quelqu'un à des pistes? toute aide serait la bienvenue
    Merci

  2. #2
    Membre émérite

    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2011
    Messages
    411
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 411
    Par défaut
    Que se passe-t-il si le pattern ne correspond pas ?

    En imaginant que rien ne change, vous pourriez utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    $str1 = "test:qui fonctionne=brouette"; // une chaine qui correspond à la recherche
    $str2 = "test=:qui ne fonctionne pas"; // Une qui ne fonctionne pas
    $pattern = "/(.[^:]+):(.[^=]+)=(.+)/"; // Le regex
    echo "test1 : ".preg_replace($pattern, "$1=$3", $str1); // test 1 
    echo "\n<br/>";
    echo "test2 : ".preg_replace($pattern, "$1=$3", $str2); // test 2
    http://codepad.viper-7.com/46oB1x

    Edit : Pour essayer les regex, j'utilise ce site bien pratique

Discussions similaires

  1. [V5] Fonction Comparer(chaine1, chaine2)
    Par Samemax dans le forum Deski
    Réponses: 3
    Dernier message: 27/03/2014, 17h45
  2. [RegEx] Tester un regex sur un champ de formulaire
    Par Olivier Regnier dans le forum Langage
    Réponses: 1
    Dernier message: 12/11/2007, 00h45
  3. [RegEx] Regex sur une fonction mathématique
    Par raptorman dans le forum Langage
    Réponses: 1
    Dernier message: 02/11/2007, 11h04
  4. [RegEx] regex sur présence d'une apostrophe
    Par Pitou5464 dans le forum Langage
    Réponses: 3
    Dernier message: 30/08/2007, 12h19
  5. Regex sur adresse IP
    Par lobiman dans le forum Langage
    Réponses: 5
    Dernier message: 12/09/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