Estoy buscando una manera en Ruby para seleccionar cada enésimo elemento en una matriz. Por ejemplo, la selección de cada segundo elemento transformaría:¿Cómo se selecciona cada enésimo elemento en una matriz?
["cat", "dog", "mouse", "tiger"]
en:
["dog", "tiger"]
¿Hay un método de Ruby para hacerlo, o hay alguna otra manera de hacerlo?
He intentado utilizar algo como:
[1,2,3,4].select {|x| x % 2 == 0}
# results in [2,4]
pero que sólo funciona para una matriz con números enteros, no cadenas.
Esto es perfecto. Muy limpio. Muchas gracias mu :) – sjsc
Gracias, tenga en cuenta que he solucionado un problema que 'n = 3' mostraría. –
El 'paso' no tenía sentido inicialmente ya que no he usado ese formulario antes. Es equivalente a '(n-1 ... a.size) .step (n) .map {| i | a [i]} ' – Matt