Bonjour,
Quand j'utilise split, je me retrouve avec une variable string avec un espace devant. Cette variable devrait en fait être un nombre, sans espace...
commet puis je enlever cet espace?
Merci d'avance
Bonjour,
Quand j'utilise split, je me retrouve avec une variable string avec un espace devant. Cette variable devrait en fait être un nombre, sans espace...
commet puis je enlever cet espace?
Merci d'avance
Avec si peu d'éléments, ça va pas être commode de t'aider. Donnes nous ton code, l'état de ta variable avant split puis après split.
@++
GLDavid
Consultez la FAQ Perl ainsi que mes cours de Perl.
N'oubliez pas les balises code :tagcode: ni le tag :resolu:
Je ne répond à aucune question technique par MP.
Voici mon code
et voici le résultat de @nom_tmp_file[$j] :
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 system("check_seed @file[$j] > ans"); $answ=`cat ans`; chomp($answ); @date = ($answ =~ m/(\s[0-9]{2}\/[0-9]{2}\/[0-9]{4}\s)/g) ; @heure = ($answ =~ m/\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{4}/g); ($jj1,$mm1,$aaaa1) =split(/\//,@date[0]); ($jj2,$mm2,$aaaa2) =split(/\//,@date[1]); ($hh1,$mi1,$ss1) = split (/:/,@heure[0]); ($hh2,$mi2,$ss2) = split (/:/,@heure[1]); $ss1=floor($ss1); $ss2=floor($ss2); @time_tmp_deb[$j] = timelocal($ss1, $mi1, $hh1, $jj1, $mm1, $aaaa1); @time_tmp_fin[$j] = timelocal($ss2, $mi2, $hh2, $jj2, $mm2, $aaaa2); @nom_tmp_file[$j] = "*HH*$hh1$mi1*";
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2*HH* 1259*
merci![]()
Je n'ai pas mon unix sous la main, mais il me semble qu'en retirant les espaces initiaux de la capture (le \s en début de motif), cela devrait grandement aider, non ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 system("check_seed @file[$j] > ans"); $answ=`cat ans`; chomp($answ); @date = ($answ =~ m/([0-9]{2}\/[0-9]{2}\/[0-9]{4})/g) ; @heure = ($answ =~ m/([0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{4})/g); ($jj1,$mm1,$aaaa1) =split(/\//,@date[0]); ($jj2,$mm2,$aaaa2) =split(/\//,@date[1]); ($hh1,$mi1,$ss1) = split (/:/,@heure[0]); ($hh2,$mi2,$ss2) = split (/:/,@heure[1]); $ss1=floor($ss1); $ss2=floor($ss2); @time_tmp_deb[$j] = timelocal($ss1, $mi1, $hh1, $jj1, $mm1, $aaaa1); @time_tmp_fin[$j] = timelocal($ss2, $mi2, $hh2, $jj2, $mm2, $aaaa2); @nom_tmp_file[$j] = "*HH*$hh1$mi1*";
oui merci, le pb venait de là je n'y avait pas pensé...
merci![]()
Partager