Bonjour,

Prenons exemple du code ci-dessous:

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
18
#!/usr/bin/perl
 
@tab = qw (1 2 3 4 5 6 7 8 9 0);
print "Taille : ".scalar(@tab)."\n";
for (my $i=0; $i<scalar(@tab); $i++)
{
	print $tab[$i]." - ";
}
print "\n\n";
 
delete @tab[1];
 
print "Taille : ".scalar(@tab)."\n";
for (my $i=0; $i<scalar(@tab); $i++)
{
	print $tab[$i]." - ";
}
print "\n";
son exécution donne:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
[~]$ perl test.pl
Taille : 10
1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 0 -
 
Taille : 10
1 -  - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 0 -
La valeur à l'index 2 a bien été supprimé, mais le tableau reste à une taille de 10 élément.

Existe-t-il une fonction toute faite qui permet de supprimer un élément d'un tableau et de le réindexer, de façon à obtenir un tableau de 9 élément après la suppression?