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 :

extraire un lien précis [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre chevronné Avatar de gofono_bass
    Inscrit en
    Décembre 2005
    Messages
    383
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Décembre 2005
    Messages : 383
    Par défaut extraire un lien précis
    Bonjour,
    Voila, j'ai dans une chaine de caracteres le code d'une page html (recupérée avec curl mais la n'est pas le probleme). Je voudrais extraire de ce code un lien associé à un texte défini pour un autre traitement. Je suis bien conscient qu'il faut le faire avec des expressions regulières mais je ne maitrise pas du tout ça. J'ai faitun truc comme ça, un peu au pif... et vous vous doutez bien que ça ne donne pas ce que je veux...
    si quelqu'un pouvait m'aider ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $pat="<a.* href=(.*)>.?".$texte;
            if (ereg($pat,$res_curl,$url2))
            {
                echo "un lien est associé au texte \n";
                echo $url2[sizeof($url2)-1];
            }
    Merci d'avance.

  2. #2
    Expert confirmé 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
    Par défaut Re: [regexp] extraire un lien precis
    Citation Envoyé par gofono_bass
    Je voudrais extraire de ce code un lien associé à un texte défini .
    Exemples ?

  3. #3
    Membre chevronné Avatar de gofono_bass
    Inscrit en
    Décembre 2005
    Messages
    383
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Décembre 2005
    Messages : 383
    Par défaut
    par exemple j'ai une adresse: http://www.site.com . Je recuperer le code html. Jusque la pas de probleme. Dans cette page, il y a un texte : TEXTE qui sera en fait un liens vers une autre page, mais j'ignore l'url de cette autre page, et c'est d'aileurs ce que je veux extraire. Dans le code, on aura quelque chose comme:
    <a href='lienverspage'>TEXTE</a>.
    Et donc, ce que je voudrais, c'est extraire 'lienverspage' dans ma variable $url2.
    Merci beaucoup

  4. #4
    Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 4
    Par défaut
    Salut,

    Voici une proposition.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $texte = "Mon lien";
    $url= "< a href='http://test.php?toto=1&tata='coucou'' alt=''>$texte</a>";
    highlight_string($url);
     
    $pat="<.*a.*href=([^ ]*).*>.*".$texte;
    if (ereg($pat,$url,$url2))
            {
                echo( "un lien est associé au texte ");
                echo( "<BR>".$url2[1]);
            }
    En fait, le principe est qu'on prend les caractères qui ne sont pas des espaces ([^ ]*).

    Voila, j'espère que cela correspond à ce que tu recherches.

  5. #5
    Membre chevronné Avatar de gofono_bass
    Inscrit en
    Décembre 2005
    Messages
    383
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Décembre 2005
    Messages : 383
    Par défaut
    yesss!! merci c'est ça, à ceci près qu'il fallit ajouter les " sinon il les prenait aussi, mais ça donne le resultats voulus.
    Merci (et dis-moi que c'etait superdur histoire que je me dise pas que je suis trop nuuul )

  6. #6
    Membre Expert
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Par défaut
    Salut, c'est juste pour donner un lien qu'il faut absolument connaître quand on veut utiliser des expressions régulières : http://www.expreg.com/

    En plus, il y a des regexp toutes faites

    Bon développement ;-)

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

Discussions similaires

  1. extraire les lien d'un webbrowser indexé
    Par bailamos dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 07/07/2008, 22h17
  2. Regex pour extraire un lien entre crochets
    Par elwario91 dans le forum Bibliothèque standard
    Réponses: 1
    Dernier message: 26/03/2008, 12h34
  3. [RegEx] Exclure une chaine dans un motif, pour extraire des liens html
    Par Dimitri01 dans le forum Langage
    Réponses: 4
    Dernier message: 09/11/2007, 17h40
  4. [RegEx] extraire les liens hypertexte d'une page web
    Par lalama dans le forum Langage
    Réponses: 1
    Dernier message: 22/03/2006, 11h43
  5. Extraire les liens des fichiers flash
    Par bluecurve dans le forum Langage
    Réponses: 3
    Dernier message: 16/03/2006, 22h24

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