Jest to dla mnie pospolitym, powtarzalnym idiomem: filtrowanie tablicy za pomocą wyrażenia regularnego i zwracanie tablicy podrzędnej. Moje podejście nie wydaje się bardzo podobne do Rubiego (pochodzę z Javy). Kończę mając wiele metod, które wyglądają bardzo podobnie.Ruby: filter array by regex?
Co to jest idiomatyczny sposób Ruby, aby ulepszyć ten kod?
def get_all_gifs(items_)
output = Array.new
filter = /\.jpg$/
items_.each do |item|
next if item =~ filter
output << item
end
output
end
Jak się masz nazwy plików? Jeśli z dysku możesz je odfiltrować, gdy pobierzesz nazwy używając 'Dir.glob ('*. Jpe? G')' –
Myślę, że prawie wszyscy źle zrozumieli moje pytanie (być może dlatego, że źle je zadałem). Przykład może być zbyt obciążony. Nie dotyczy to obrazów ani nazw plików ani rozszerzeń plików. Chodzi o filtrowanie tablic i lepszy język metod. – allanberry