Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1118 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Aide sur Expression eregi en PHP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Aide sur Expression eregi en PHP

n°1863338
yasachali
Posté le 18-03-2009 à 22:35:01  profilanswer
 

Bonjour à tous,
 
J'essaie actuellement de faire un script qui récupère le premier lien d'une page web.  
Les liens sont du type: http://www.monlien.fr/mapage1.html
Pour cela j'utilise les expressions régulières. J'utilise la fonction php eregi mais je n'obtiens pas exactement ce que je veux.
 
Voici mon instruction:
Code :
 
  $string = '<a href="http://www.monlien.fr/mapage1.html" class="selectVdo" target="_PARENT" >Nom lien du 16/1/09</a><br/><a href="http://www.monlien.fr/mapage1.html" class="selectVdo" target="_PARENT" >Nom lien du 17/03/09</a>';
 
dans la string j'ai deux liens qui sont constitué presque pareil .... moi je voudrais retourner le premier lien ... à savoir : http://www.monlien.fr/mapage1.html
 
j'ai pensé utiliser eregi(" a href=\"(.*)class",$string,$regs);
 
prendre tout ce qui est entre a href=" et class mais vu que les balise href=" & class sont présentent plusieurs fois dans la chaine, il faudrait qu'il s'applique à la première itération .....
 
et là ca coince
 
Si je code ça :  

Citation :


<?php
$string = '<a href="http://www.monlien.fr/mapage1.html" class="selectVdo" target="_PARENT" >Nom lien du 16/1/09</a><br/><a href="http://www.monlien.fr/mapage1.html" class="selectVdo" target="_PARENT" >Nom lien du 17/03/09</a>';
 
$toto = eregi("a href=\"(.*)class",$string,$regs);
echo "$regs[1]";
?>


 
j'ai ça comme résultat :

Citation :


http://www.monlien.fr/mapage1.html" class="selectVdo" target="_PARENT" >Nom lien du 16/1/09


 
par contre je je rajoute une balise par exemple font-style="2px" (!!! attentionc'est juste pour l'exemple)

Citation :


<?php
$string = '<a href="http://www.monlien.fr/mapage1.html" font-style="2px" class="selectVdo" target="_PARENT" >Nom lien du 16/1/09</a><br/><a href="http://www.monlien.fr/mapage1.html" class="selectVdo" target="_PARENT" >Nom lien du 17/03/09</a>';
 
$toto = eregi("a href=\"(.*)\" font",$string,$regs);
echo "$regs[1]";
?>


en retour j'ai bien mon lien 1 isolé.


 
 
Je sollicite votre aide pour résoudre mon problème et avoir une petite explication du pourquoi çà ne marche pas .... si ce n'est pas trop demandé
J'ai épluché tout ce que je pouvais sur les forums, phpnet et compagnie, mais sans grand succès ....
 
Merci beaucoup par avance.

mood
Publicité
Posté le 18-03-2009 à 22:35:01  profilanswer
 

n°1863343
stealth35
Posté le 18-03-2009 à 22:41:37  profilanswer
 

avec la class DOMDocument ca devrai se faire plus facilement

n°1863361
yasachali
Posté le 18-03-2009 à 23:06:12  profilanswer
 

euhhh j'connais pas ...

n°1863390
yasachali
Posté le 19-03-2009 à 08:29:53  profilanswer
 

qq peut il me doner un coup de pouce sur mon pb ??

n°1863407
guybrush02
Posté le 19-03-2009 à 09:20:14  profilanswer
 

A defaut, tu peux utiliser la regex suivante :  
href=\"([^\"]*)\"

n°1863434
stealth35
Posté le 19-03-2009 à 10:37:35  profilanswer
 

Code :
  1. $string = '<a href="http://www.monlien.fr/mapage1.html" class="selectVdo" target="_PARENT" >Nom lien du 16/1/09</a><br/><a href="http://www.monlien.fr/mapage1.html" class="selectVdo" target="_PARENT" >Nom lien du 17/03/09</a>';
  2. $doc = new DOMDocument;
  3. $doc->loadHTML($string);
  4. $link = $doc->getElementsByTagName('a');
  5. echo $link ->item(0)->getAttribute('href');


Message édité par stealth35 le 19-03-2009 à 10:38:29

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Aide sur Expression eregi en PHP

 

Sujets relatifs
Aide pour la création d'un site.[Résolu] Créer un fichier tableur en PHP (pas EXCEL)
Modifier ant movie catalog viewer[PHP 5] base de données mysql : commande 'UPDATE' ?
Faire passer un session PHP ou Cookies en différent domainesBesoin d'aide OpenGL/GLUT
Aide sur Google Chart API[résolu] Aide pour compilation
[php] [RESOLU] aide case switch automatisé php[PHP] REGEX ou pas dans mon cas ?
Plus de sujets relatifs à : Aide sur Expression eregi en PHP


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR