impulse a écrit a écrit :
Hum... la c'est a mon tour de pas trop capter ce que tu dis...
Je vais essayer de faire ce que tu as dit. J'ai essayé ça :
my ( @my_array ) = $edit->param('list' =~ /^([a-zA-Z\d]+)$/;
et bien sur ça marche po (@my_array ne contient que la premiere valeur de la list passée en param...).
a suivre... (la j'ai un cours d'allemand)
hihi
|
En fait l'instruction map applique un bloc d'instruction à chaque élément d'un tableau, sachant que pour chaque élément, on lit et écrit la valeur du tableau via la variable $_ .
Ce que j'ai donc, c'est appliquer l'exemple de la doc à tout les éléments d'un tableau.
Dans ton exemple :
Code :
- my ( @my_array ) = $edit->param('list') =~ /^([a-zA-Z\d]+)$/;
|
tu veux récupérer un tableau alors que l'expression régulière va te renvoyer uniquement 1 élément vu qu'il n'y a qu'un seul groupe de parenthèses.
L'interêt de map c'est de justement appliquer ça à tout les éléments d'un tableau.
Si ta méthode param renvoie bien un tableau (et pas une référence vers un tableau), alors essaie ceci :
Code :
- my @my_array = map {($_) = $_ =~ /^([-\@\w.]+)$/} $edit->param('list');
|