Bonjour à tous,

Je créé un petit outil qui me permet de parser des pages que je consulte souvent pour ne récupérer que les infos qui m'intéresse.

Dans le code source de la page, le pseudo des gens se trouve dans une séquence comme celle ci :

J'ai fais une fonction qui me récupère tous les pseudos de la page avec un preg_split, histoire de compter. Le nombre retourné est juste.

J'ai fais une fonction pour récupérer le pseudo avec preg_match_all... et c'est là que j'ai un soucis...

voici la partie de mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
private $MasquePseudo = '`<hr><b>(.+)</b>,`isU';
 
public function DRCreerTableauPseudos()
  {
    $this->DRDebug("- Création d'un tableau contenant la liste des élements de la vue");
    //création des noms des personnages
    $this->DRDebug("-- Création de la liste des noms des personnages");
    preg_match_all($this->MasquePseudo,$this->CodeHtml,$L_Captures);
    $this->TableauVue["nom"] = $L_Captures[1];
et le contenu de $L_Captures[1] n'est pas bon...

Voici une rapide portion du rendu :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
onmouseover=\"return overlib(\'&nbsp;&nbsp;&nbsp;&nbsp;<b>10 / 56 </b>&nbsp;&nbsp;&nbsp;&nbsp; distance : 3<br><hr><b>Soul
Alors que la réponse attendue est seulement "Soul" (dernier mot de la ligne).

donc si je fais un print_r($L_Captures[1]), ca me donne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
array(
[0]=> [plein de code qu'il ne devrait pas y avoir]LE_PSEUDO
[1]=> [Encore du code qui ne devrait pas y avoir]LE_PSEUDO
Avez vous une idée ?
Est-ce mon masque qui est foireux ?
Est-ce qu'il y a une erreur dans le code HTML de base (il fait pas loin de 2000 lignes... je le poste donc pas )

Merci de vos futures aides