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 :

probléme avec preg_match_all [RegEx]


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 65
    Points : 31
    Points
    31
    Par défaut probléme avec preg_match_all
    bonjour à tous

    je viens d écrire un bout de code qui sert a extraire des chaines avec des conditions bien precise a partir une grande chaine

    ma condition : extraire tout ce qui commence par "http:" et qui se termine par "_1200.jpg"

    la chaine initiale : $stringa = ' bla bla bla http://www.monsite.fr/test/piclist/2/4/3/324398243-7c1890b1-96c8-4584-bed0-d4cea7585e4d_400.jpg bla bla http://www.monsite.fr/test/piclist/2/4/3/324398243-7c1890b1-96c8-4584-bed0-d4cea7585e4d_1200.jpg azazazazazaz bla bla http://www.monsite.fr/test/piclist/2/4/3/324398243-597a1fcf-bcc3-449d-bf9e-66a02a2ae1aa_1200.jpg azazazazazaz bla bla http://www.monsite.fr/test/piclist/2/4/3/324398243-597a1fcf-bcc3-449d-bf9e-66a02a2ae1aa_400.jpg';.

    ce que je veux , c est avoir un tableau qui comporte

    => http://www.monsite.fr/test/piclist/2/4/3/324398243-7c1890b1-96c8-4584-bed0-d4cea7585e4d_1200.jpg
    => http://www.monsite.fr/test/piclist/2/4/3/324398243-597a1fcf-bcc3-449d-bf9e-66a02a2ae1aa_1200.jpg
    voici le code que travaille avec mais qui donne pas le resultat voulu :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $m = preg_match_all('/(http:)(.*)(_1200.jpg)/', $stringa, $match); 
     
    if ($m) { 
        $links=$match[0]; 
        for ($j=0;$j<$m;$j++) { 
    		echo $links[$j].'<br>';
        } 
    }
    et merci d'avance

  2. #2
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 858
    Points : 6 556
    Points
    6 556
    Par défaut
    Bonjour,

    et si tu rajoutes un point d'interrogation juste après le quantificateur * pour le rendre non gourmand (non-greedy)?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /(http:)(.*?)(_1200\.jpg)/
    (attention aussi au point qu'il faut échapper pour qu'il matche effectivement un point)
    Brachygobius xanthozonus
    Ctenobrycon Gymnocorymbus

  3. #3
    Nouveau membre du Club
    Inscrit en
    Novembre 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 65
    Points : 31
    Points
    31
    Par défaut
    Merci pour votre réponse , mais j ai eu ce que je voulais avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    '/(http:\/\/www.monsite.fr\/)([a-zA-Z0-9]+[\-|\/]{1})+[a-zA-Z0-9]+_{1}1200\.jpg/'

  4. #4
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 858
    Points : 6 556
    Points
    6 556
    Par défaut
    sinon il y avait ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /\bhttps?:\S+_1200\.jpg\b/
    Brachygobius xanthozonus
    Ctenobrycon Gymnocorymbus

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 01/07/2011, 16h44
  2. [RegEx] problème avec preg_match_all
    Par renaudjuif dans le forum Langage
    Réponses: 4
    Dernier message: 01/04/2009, 14h42
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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