> Globalement parser du html avec des regexp c'est pas l'idée du siècle
> car dès que le html ne sera plus valide tu vas obtenir n'importe quoi
> mais si tu peux faire confiance au html c'est good enough.

Oui, je sais bien, mais mon html n'est d'une part pas très bien formé
et d'autre part pas tellement susceptible de bouger. La forme des
données encore moins, pour l'instant je ne vois pas tellement d'autre
façon de faire.


> Ceci dit il y a plein de solution à ton problème, il suffit d'en
> comprendre la nature:
> 1) depuis très longtemps les regExp ruby fonctionne avec l'utf8 en
> 1.8.2 il suffisait de $KCODE = 'u' et depuis c'est souvent par defaut.
> 2) [a-z] ne contient pas les caractères accentués, ni majuscule, juste
> de a à z,  \w  en revanche signifie en gros caractères alphabétique au
> sens large
> 3) [a-zû] fonctionne aussi
> 4) n'utilise pas encore les subtilité de ruby 1.9, sinon tu risques
> d'entendre tes oreilles siffler, c'est encore trop tôt, 100% des vrais
> prod sont en 1.8;x

Ah... suis passé en 1.9.1 parce que ma distrib a upgradé (archlinux).
J'aurais du figer la version.
Pour le coup j'ai recompilé la 1.8.7

>
> Pour en revenir à ton problème de parser du html avec des regexp voilà
> quelques solutions:
>
> Générique:
> /<th  class="date">(.*?)<\/th>/m
>
> Spécifique:
> /<th  class="date">([\w\d]*)<\/th>/m
>
> Ultra spécifique:
> /<th  class="date">(\w{3,}\d{2})<\/th>/m
>
> Tu as juste à regarder dans $1 pour trouver le résultat

Effectivement ça marche enfin.
Merci!

-- 
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]

Répondre à