¿Hay una manera rápida y fácil de grep a través de una matriz para encontrar los elementos que satisfacen algunas pruebas y eliminarlos de la matriz original?¿Cómo puedo grep a través de una matriz, mientras filtrado las coincidencias?
Por ejemplo, me gustaría
@a = (1, 7, 6, 3, 8, 4);
@b = grep_filter { $_ > 5 } @a;
# now @b = (7, 6, 8)
# and @a = (1, 3, 4)
En otras palabras, quiero dividir una matriz en dos matrices: las que coinciden y los que no se ajustan a una determinada condición.
por qué? Es trivial y fácil de leer crear 2 arreglos de @a ('foreach (@a) {if ($ _> 5) {push @b, $ _;} else {push @c, $ _;}} ') ¿por qué necesita hacer esto" parcialmente en su lugar "? – mirod
porque soy flojo. –