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 :

Capture avec expression régulière par ereg [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre actif Avatar de pimpmyride
    Inscrit en
    Décembre 2005
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 321
    Points : 207
    Points
    207
    Par défaut Capture avec expression régulière par ereg
    bonjour,

    je cherche a capturer dans le 3 ème paramètre de ereg() tous les occurrences que je vais trouver.

    Je souhaite capturer les occurrences qui commencent et finissent par ###.
    Peut importe ce qu'il y a entre les trois premiers ### et les trois derniers ###.

    Voici ce que j'ai essaye de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ereg("^(###[a-zA-Z0-9.-_]*###)$", $s, $regs);
    merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Points : 631
    Points
    631
    Par défaut
    Bonjour,
    en fait, vous essayez de faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
     
      $chaine = '###A#JDSJWKLXJklkk- dd541ds477v4###';  
      $chaine = str_replace('###', '', $chaine);
     
      echo $chaine;
     
    ?>
    Mais en dix fois plus lent?

    Cordialement,
    DaRiaN.

  3. #3
    Membre actif Avatar de pimpmyride
    Inscrit en
    Décembre 2005
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 321
    Points : 207
    Points
    207
    Par défaut
    non DaRiaN ce n'est pas ca que je veux faire, voici un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $chaine = '###A#JDSJWd541ds477v4### gdfg dfg ###gdfgfdg###fsdfsdf';
     
    ereg = // la regle
     
    print_r($regs);
     
    // affichage de $regs :
    // ###A#JDSJWd541ds477v4###
    // ###gdfgfdg###

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Points : 631
    Points
    631
    Par défaut
    Pour le moment, essayez avec ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
     
      $chaine = '###A#JDSJWd541ds477v4### gdfg dfg ###gdfgfdg###fsdfsdf';
     
      echo '<pre>';
      preg_match_all('`###([A-z0-9]+[#]{0,1}[A-z0-9]+)###`', $chaine, $result);
      print_r($result);
     
    ?>
    Quand je rentre ce soir, je cherche un meilleur pattern ou une meilleure méthode, mais n'utilisez surtout pas ereg.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Array
    (
        [0] => Array
            (
                [0] => ###A#JDSJWd541ds477v4###
                [1] => ###gdfgfdg###
            )
     
        [1] => Array
            (
                [0] => A#JDSJWd541ds477v4
                [1] => gdfgfdg
            )
     
    )

  5. #5
    Membre actif Avatar de pimpmyride
    Inscrit en
    Décembre 2005
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 321
    Points : 207
    Points
    207
    Par défaut
    j'ai un peu modifier la régle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    preg_match_all('`###([A-z]+)###`', $s, $regs);
    merci

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 30/01/2008, 22h20
  2. pb avec expression régulière (regex)
    Par rudhf dans le forum C#
    Réponses: 12
    Dernier message: 10/05/2007, 15h20
  3. [RegEx] Contrôle avec expression régulière
    Par lodan dans le forum Langage
    Réponses: 8
    Dernier message: 23/10/2006, 19h32
  4. [RegEx] Problème avec expressions régulières.
    Par Cygnus Saint dans le forum Langage
    Réponses: 12
    Dernier message: 14/08/2006, 11h55
  5. [C#] Caractères hexadécimal avec expressions régulières
    Par shinchan dans le forum Windows Forms
    Réponses: 4
    Dernier message: 16/01/2006, 11h41

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