2017-04-12 47 views
2

我有一個數組。例如,在Ruby中通過索引刪除多個元素

x = [1,2,3,4,5] 

我知道命令

x.delete_at(i) 

將在索引從數組中刪除的元素。但從我讀過的內容來看,它只能處理一個論點。

比方說,我有一個變量,存儲我想從x中刪除的索引。例如,

y = [0,2,3] 

我的問題:是否可以使用另一個數組的數組中刪除多個元素,在你想刪除的指標商店?

從本質上說,像

x.delete_at(y) 

謝謝! :)

回答

2

您可以使用rejectwith_index

x.reject.with_index { |e,i| y.include? i } #=> [2,5] 
+0

@AndreyDeineko我認爲[這](https://meta.stackexchange.com/questions/91922/how-was-this-answer-posted在此問題之後被關閉)回答您的查詢。另外作爲一個附註,你是否建議我刪除這個答案? –

+1

Thx爲鏈接線程!你使用'拒絕'和鏈接的問題使用'delete_if',所以我認爲這是新的東西,並不會說你需要刪除它:)但是由你自己決定:) –