Bonjour,

Je fais actuellement un script afin de récupérer des informations d'une page web d'un site externe.
J'ai lu préalablement le tutoriel des expressions régulières, j'ai assimilé mais j'arrive pas à mettre à 100% en pratique.

Le site que je scrute possède des centaines de ligne de se type là :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
username":"Zariell","avatar":"4fea4e210efebab49604c3d65d6220c8","userId":"2832660339215456238","createdAt":1321551255,

Je souhaite donc récupérer userId dans toutes ces lignes. J'utilise donc un preg_match() comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
function recup_userid($url) {
 
 global $erreur;
 $source = file_get_contents($url);
 $resultat = preg_match('#"userId":"(.+)"\}\}#', $source, $userid);
 if($resultat) {
  $erreur = 0;
  return $userid;
 } else {
  $erreur = 1;
 }
}
Ceci me retourne rien... Enfin, il me retourne $erreur = 1 ce qui m'affiche un message d'erreur personnalisé.
Le fait qu'il trouve plusieurs résultats identique peut poser problème ? Sur ma page il doit avoir 24 résultats identiques à ce code.

J'ai pourtant déjà utilisé cette même fonction pour chercher un lien et cela m'avait posé aucun problème. Un problème avec les "" peut être ? J'ai déjà essayer de mettre des \ devant, mais ceci ne change absolument rien.

Cordialement Zariell.