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 :

difficulté à créer un motif de recherche [RegEx]


Sujet :

Langage PHP

  1. #1
    Expert éminent
    Avatar de cyberzoide
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 277
    Points : 6 612
    Points
    6 612
    Par défaut difficulté à créer un motif de recherche
    bonjour à tous,

    je recherche dans une chaîne une sous-chaîne précédée de la chaîne #CODE_RUBRIQUE= et contenant n'importe quel caractère sauf ceux suivants : # et ]

    j'ai donc créé ce motif :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    eregi("#CODE_RUBRIQUE=([^#\]])(#|])", $text, $regs)
    mais ça ne marche pas ! Pourquoi ?

    en remplaçant "([^#\]])" par "(.*)", j'extrais trop de choses...

    Un exemple de chaîne à traiter :
    ... [traitement; requete; objet=actualite#CODE_RUBRIQUE=ACC_FOR-DIP-FQ#NOMBRE=20#STYLE=0006] ...
    et de ce qui doit être extrait :
    ACC_FOR-DIP-FQ
    Quelqu'un saurait me donner un bon motif ?



    Evidemment, je pourrais contourner le problème en réalisant plusieurs opérations de traitement successives, mais je souhaite faire les choses proprement d'une seule traite
    Supervision avec Check_MK et OMDdistro (Open Monitoring Distribution)

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Essaie ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    $str = "[traitement; requete; objet=actualite#CODE_RUBRIQUE=ACC_FOR-DIP-FQ#NOMBRE=20#STYLE=0006]";
    preg_match('/#CODE_RUBRIQUE=([^#\]]*)/', $str, $matches);
    var_dump($matches);
     
    ?>

  3. #3
    Expert éminent
    Avatar de cyberzoide
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 277
    Points : 6 612
    Points
    6 612
    Par défaut


    ça marche, mais rien de possible avec ereg ?!
    Supervision avec Check_MK et OMDdistro (Open Monitoring Distribution)

  4. #4
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    C'est quoi ereg ?
    Je ne travaille qu'avec preg qui est compatible perl et qui est plus rapide, dixit la doc

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

Discussions similaires

  1. [D5] Créer un moteur de recherche
    Par MelkInarian dans le forum Delphi
    Réponses: 10
    Dernier message: 19/04/2007, 11h04
  2. Créer une fonction de recherche multi début de mot
    Par Pakkaï dans le forum Général JavaScript
    Réponses: 29
    Dernier message: 29/03/2007, 17h16
  3. Créer un moteur de recherche dans une cellule d'un classuer excel
    Par ludovicparis dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 20/03/2007, 15h36
  4. Réponses: 3
    Dernier message: 18/08/2006, 19h05
  5. [MySQL] Créer un moteur de recherche simple ?
    Par eXe|xTn dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 30/04/2006, 00h09

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