2010-07-13 173 views
1

如何從Perl數組中刪除元素ref?我有它的索引,我不想將元素設置爲undef,但要完全刪除它。刪除數組元素

例如,如何將$a = [1, 2, 3];更改爲$a = [1, 3];

回答

5

使用splice

my @array = (44,55,66); 
splice @array, 1, 1; # 55 
@array; # (44,66) 

my $array_ref = [44,55,66]; 
splice @{ $array_ref }, 1, 1; # 55 
$array_ref; # (44,66) 

我注意到,你都搞不清數據類型和引用,因爲傑韋利:: REPL顯示它們只在參考形式。你在問題中定義了一個數組引用,而不是數組。比較我的代碼示例。

+0

我對這些類型沒問題,但忘了正確命名它們,因爲我只是偶然編寫Perl;)糾正問題。 – viraptor 2010-07-13 14:04:27