Bonjour
Vu le nombre de sujets qu'il y a sur les expressions régulières je vois que je ne suis pas le seul a avoir des soucis avec
Je souhaite extraire les lignes d'un tableau d'une page web qui comporte plusieurs tableaux. Pour cela le tableau qui m'interesse comporte un pattern spécial qui est facile a distinguer, donc pas de probleme de ce coté la. Mon soucis c'est que jusqu'a maintenant mon expression reguliere me recupere toutes les lignes d'un coup, sans les séparer.
Exemple de la page:
Code :
- <html>
- <head>
- ...
- </head>
- <body>
- <table>
- <tr>
- <td>...</td>
- </tr>
- <tr>
- <td>...</td>
- </tr>
- </table>
-
- <!-- Tableau a extraire -->
- <table>
- <tr>
- <td><a href="...">...</a></td>
- </tr>
- <tr>
- <td><a href="...">...</a></td>
- </tr>
- </table>
- <table>
- <tr>
- <td>...</td>
- </tr>
- <tr>
- <td>...</td>
- </tr>
- </table>
- </body>
- </html>
|
Mon expression régulière:
Code :
- eregi("<tr><a href=(.*)</tr>", $Page, $Result);
|
Avec ca il me récupère donc tout le contenu du 2eme tableau ET du 3eme tableau en même temps. Je voudrais donc exclure le 3eme tableau pour ne garder que le 2eme et surtout extraire ligne par ligne. Je pense qu'il doit falloir mettre dans la parenthèse capturant que je ne veux pas de "<tr>" pour eviter qu'il ne prenne plusieurs ligne en même temps mais je ne trouve pas comment faire?
Pourriez-vous me donner un coup de main?
Message édité par IvanleFou le 07-09-2007 à 11:40:02