preg_match_all et cellule d'un tableau

WRInaute occasionnel
Bonjour,

Je souhaite récupérer les valeurs des cellules d'un tableau html qui sont sur une page mais ces cellules sont sous cette forme :
Code:
<td align="center">
              20
</td><td align="center">
              32
</td><td align="center">
              50
</td>
Les chiffres (20, 32 et 50) se trouve sur une ligne à part et lorsque j'utilise preg_match_all ça ne m'affiche rien :
Code:
$motif = '/<td align="center">(.*?)<\/td>/';
preg_match_all($motif, $chaine, $out);
echo "".$out[0][0]."<br>".$out[0][1]."<br>".$out[0][2]."<br>";
Quelqu'un voit-il une solution pour récupérer ces chiffres ?

Merci d'avance pour votre aide.
 
WRInaute occasionnel
Hello,

preg_match_all('/<td ([^<]*)>([^<]*)<\/td>/', $html, $out);

récupère align="center" et les différentes données ou

preg_match_all('/<td align="[^"]+">([^<]*)<\/td>/', $html, $out);

juste pour les chiffres.

Chez moi ça fonctionne.
 
WRInaute occasionnel
Aaarrrgggh a dit:
Hello,
preg_match_all('/<td align="[^"]+">([^<]*)<\/td>/', $html, $out);
juste pour les chiffres.
Chez moi ça fonctionne.
Ca marche aussi chez moi :D

Vraiment un grand merci pour ton aide Aaarrrgggh
 
WRInaute occasionnel
J'ai encore besoin d'un peu d'aide :?

J'ai des cellules d'un tableau comme ci-dessous :
Code:
<td align="center">
          <span style='color:#008800'>%</span>
</td>
Je souhaite remplacer le "%" par "0%" qui est entre la balise <span></span>, j'ai essayé pas mal de choses mais ça marche pas :(

Quelqu'un peut-il m'aider ?
 
WRInaute occasionnel
J'ai aussi essayé avec str_replace mais j'y arrive pas :?

J'ai essayé cela :
Code:
$remplace = str_replace('<span style=[^>]+>%</span>','<span style=[^>]+>0%</span>',$chaine);

$remplace = str_replace('<span style=[^>]*>%</span>','<span style=[^>]*>0%</span>',$chaine);

$remplace = str_replace('<span style='color:#008800'>%</span>','<span style='color:#008800'>0%</span>',$chaine);

$remplace = str_replace('<span style=\'color:#008800\'>%</span>','<span style=\'color:#008800\'>0%</span>',$chaine);

etc...
tout ça, ça ne marche pas :(
 
WRInaute occasionnel
c'est un peu bidouillé, mais chez moi ceci fonctionne :
Code:
$chaine= preg_replace('|\>%|', '>0%', $chaine);
 
WRInaute occasionnel
Encore une fois un grand merci Aaarrrgggh pour ton aide, ça marche parfaitement :D

J'aimerai bien ne pas mourrir idiot :D est-ce que tu as un truc pour trouver les solutions ou si c'est du feeling ?
 
Discussions similaires
Haut