Filtro de matriz en Ruby

Filtro de matriz en Ruby
Podemos pensar en las matrices como bases de datos o, más específicamente, en una tabla dentro de una base de datos. El uso principal de las matrices es almacenar artículos relacionados en una sola entidad, lo que le permite administrarlos de manera eficiente.

Este tutorial ilustrará cómo filtrar los resultados de una matriz utilizando los métodos de selección, búsqueda y rechazo.

Usando el método Seleccionar

Utilizamos la instrucción Seleccionar para filtrar elementos en una matriz para un subconjunto que coincida con criterios específicos.

El método de selección devuelve una nueva matriz con todos los valores donde la condición se evalúa a verdadero.

El método de selección acepta un bloque para especificar la condición.

Por ejemplo:

Frameworks = [
"Reaccionar",
"Angular",
"Vue JS",
"Esbelto"
]
marcos de impresión.Seleccionar | i | i.Longitud> 6

En el ejemplo anterior, usamos el método Seleccionar para filtrar la cadena con una longitud mayor que 6.

El código en el bloque iterará sobre cada elemento en la matriz, verificando la condición. Si es verdadero, entonces la instrucción Seleccionar la agregará a una nueva colección.

Seleccionar en el lugar

La instrucción SELECT no afecta la matriz original. Crea una nueva matriz con elementos que coinciden con la condición especificada.

Para afectar la matriz original en su lugar, podemos usar la selección! Método.

Frameworks = [
"Reaccionar",
"Angular",
"Vue JS",
"Esbelto"
]
marcos.seleccionar! | i | i.Longitud> 6
marcos de impresión

La matriz de marcos se modifica para contener solo los elementos con una longitud superior a 6.

=> ["Angular"]

Usando el método Buscar

Podemos usar el método Buscar para encontrar un solo elemento en la matriz que coincida con una condición específica.

Por ejemplo:

Frameworks = [
"Reaccionar",
"Angular",
"Vue JS",
"Esbelto"
]
marcos de impresión.encontrar | i | i.longitud == 5

El método de búsqueda devolverá la primera coincidencia de la condición especificada.

Aquí hay una salida de ejemplo:

=> Reaccionar

Si no hay coincidencia, el método devuelve nil.

A veces puede encontrar el método Find_all. El método find_all devuelve todas las coincidencias en lugar de un solo objeto. Puede considerarlo un alias del método seleccionar.

Usando el método de rechazo

El método de rechazo es exactamente lo contrario del método Seleccionar. En lugar de incluir los valores que coinciden con una condición específica, el método rechaza los elementos.

Por ejemplo:

Frameworks = [
"Reaccionar",
"Angular",
"Vue JS",
"Esbelto"
]
marcos de impresión.rechazar | i | i.Longitud> 6

En el ejemplo anterior, eliminamos todos los elementos con una longitud mayor que 6. En nuestro ejemplo, este es solo un objeto.

El valor resultante es como:

=> ["Reaccionar", "vue js", "eslé"]

Para resumir

Acaba de aprender a filtrar los elementos en una matriz utilizando los métodos de selección, búsqueda y rechazo.

Recuerde: la práctica es igual a dominio