2016-07-07 7 views

Antwort

2

können Sie die Löschmethode verwenden Vorkommen eines einzelnen Wert zu entfernen:

arr = ['a', 'b', 'c', 'b', 'c', 'd'] 
arr.delete 'b' 

# ['a', 'c', 'c', 'd'] 

Oder Sie können die verwenden - oder - = Operator ein Array von Werten zu löschen.

arr = ['a', 'b', 'c', 'b', 'c', 'd'] 
arr -= ['a', 'c'] 

# ['b', 'b', 'd'] 
0

Es gibt mehrere Äquivalent der _.pull, aber sie arbeiten mit einem Wert zu einem Zeitpunkt.

könnten Sie verwenden

[:a, :b, :c, :a, :b].delete(:a) # => can't accept multiple arguments 

Oder Sie

[:a, :b, :c, :a, :b].delete_if{|x| [:a, :b].include? x} 

verwenden könnte Oder Sie könnten obige Ansatz verwenden @andrunix durch das Array Subtraktion:

arr = ['a', 'b', 'c', 'b', 'c', 'd'] 
arr -= ['a', 'c']