Bonjour, il me faut désérialiser des données ( bouts d'html) d'un fichier pour assigner les tokens à un table de hachage.
Le fichier a le pattern suivant :
Ce qui va bien, c'est quand j'extrait des "champs" sans espaces. Mais dès qu'il y a un espace (pour les url_beg_tok en général) je n'obtient que <li ou <a ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 vert: url_beg_tok="<li class=g><h3 class=r><a href=\"" url_end_tok="\"" bleu: url_beg_tok="<a class=\'res\' href=\'" url_end_tok="\'"
Le code qui me permet d'extraire est le suivant :
J'ai ainsi essayé de protéger les espaces etc.. rien n'y fait. Si quelqu'un à une idée je suis preneur !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 sub Init_hash_mr { open (FD, "<***********Mr_data.txt") or die ("Impossible de trouver le fichier Mr_data.txt : $! \n"); my %hash_mr = (); while (<FD>) { next unless s/^(.*?):\s*//; my $mr = $1; for my $field ( split ) { #le problème vient de là mais comment faire? my ($clef,$valeur) = split /=/, $field; $hash_mr{$mr}{$clef} = $valeur; } } close (FD); return \%hash_mr; } # Init_hash_mr()
(j'éspere que la ref ne dérange pas trop, j'avais la flemme de la retransformer en hach "normal");
Partager