Regexp : répétition

Regexp : répétition - Divers - Programmation

Marsh Posté le 04-03-2009 à 11:33:56    

Hello à tous,  
 
Voici mon problème du jour. Je possède une source HTML contenant la portion de code suivante :

Code :
  1. <table>
  2. <tbody>
  3. <td>
  4. <tr><a href="lien">Texte</a></tr>
  5. <tr>Texte</tr>
  6. </td>
  7. <td>
  8. <tr><a href="lien">Texte</a></tr>
  9. <tr>Texte</tr>
  10. </td>
  11. <td>
  12. <tr><a href="lien">Texte</a></tr>
  13. <tr>Texte</tr>
  14. </td>
  15. </tbody>
  16. </table>


 
J'ai une expression régulière qui extrait les "Texte" et les liens, et qui ressemble à ça :

Code :
  1. (?is)(?:<tr><td[^>]*>(?:.*?)<a\s+href="(.*?)"[^>]*>(.*?)</a>(?:.*?)</td><td[^>]*>(.*?)</td></tr> )


 
Mon problème : j'aimerais extraire les n premières lignes du tableau. Donc je me suis dit :

Code :
  1. (?is)(?:<tr><td[^>]*>(?:.*?)<a\s+href="(.*?)"[^>]*>(.*?)</a>(?:.*?)</td><td[^>]*>(.*?)</td></tr> ){n}

n est un entier.
 
Mais non, ça ne marche pas. Une idée ?


---------------
Un être en tant qu'être ne pourrait-il pas être autre qu'il n'est s'il n'explique pas lui-même son être ?
Reply

Marsh Posté le 04-03-2009 à 11:33:56   

Reply

Marsh Posté le 04-03-2009 à 12:23:48    

greeeg a écrit :

Mais non, ça ne marche pas. Une idée ?


Ne pas manipuler du HTML avec des expressions rationnelles (et surtout pas avec une seule expression)

 

Accessoirement c'est n'importe quoi ce tableau, ça ne veut strictement rien dire, les td ça ne va pas dans le tbody et on met pas des rows dans des cells. Je suggère donc également d'apprendre à écrire du HTML.


Message édité par masklinn le 04-03-2009 à 12:27:17

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed