Capturer avec une REGEX

Capturer avec une REGEX - PHP - Programmation

Marsh Posté le 15-09-2010 à 16:32:12    

Bonjour,
 
Mon problème est très simple.
Je souhaiterai récupérer une information à partir du code source d'une page Web grâce à une REGEX.
Imaginons le code de la page en question :

Code :
  1. <html>
  2.     <head>
  3.         <title>blabla</title>
  4.     </head>
  5.     <body>
  6.         ... blabla ...
  7.         ... blabla ...
  8.         <span>Valeur (73)</span>
  9.         ... blablabla ...
  10.     </body>
  11. </html>


 
Pour récupérer ce code source, je le fais avec un file_get_contents(url) que je stocke dans une variable $content.
Jusque là pas de soucis.
 
Je souhaiterai pouvoir récupérer la valeur qui se trouve entre parenthèse : 73.
 
Arrive donc ma regex :
 

Code :
  1. $content = file_get_contents("http://www.siteduzero.com" );
  2. $content = preg_replace('#.*Valeur \(([0-9]+)\).*#', '$1', $content);
  3. echo $content;


 
Le soucis est donc que je ne récupére pas seulement la valeur 73, je récupère aussi tout le code source de la page sans 'Valeur ( )' .
 
Comment faire pour ne récupérer que le nombre entre parenthèse ? et pas tout le code source.
 
Je vous remercie par avance.

Reply

Marsh Posté le 15-09-2010 à 16:32:12   

Reply

Marsh Posté le 15-09-2010 à 17:15:51    

preg_replace('/.*Valeur \(([0-9]\+)\).*/', '$1', $content);


Message édité par roondar le 15-09-2010 à 17:20:48
Reply

Marsh Posté le 15-09-2010 à 17:23:10    

Là ça ne fait rien du tout, pourquoi échapper le signe Plus ?


---------------
>> Culture-Info : La culture informatique pour tous (projet scolaire) <<
Reply

Marsh Posté le 15-09-2010 à 17:36:06    

C'est bon j'ai trouvé d'où venait l'erreur, il fallait supprimer les sauts de ligne avant la recherche avec preg_replace en faisant ceci :
$content = str_replace("\n", '', $content);
 
Merci quand même !


---------------
>> Culture-Info : La culture informatique pour tous (projet scolaire) <<
Reply

Marsh Posté le 15-09-2010 à 19:19:24    

pour parser du DOM c'est avec DOMDocument

Reply

Sujets relatifs:

Leave a Replay

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