Cómo comparar dos matrices en PowerShell (con ejemplos)
Puede utilizar los siguientes métodos en PowerShell para comparar los valores en dos matrices:
Método 1: buscar valores que existan solo en la primera matriz
$only_array1 = $array1 | where {$array2 -NotContains $_}
Este ejemplo particular devuelve los valores que solo existen en la primera matriz y no en la segunda matriz.
Método 2: buscar valores que existan solo en la segunda matriz
$only_array2 = $array2 | where {$array1 -NotContains $_}
Este ejemplo particular devuelve los valores que solo existen en la segunda matriz y no en la primera matriz.
Método 3: buscar valores que existan en ambas matrices
$in_both = $array1 | where {$array2 -Contains $_} Este ejemplo particular devuelve los valores que existen en ambas matrices.
Los siguientes ejemplos muestran cómo utilizar cada uno de estos métodos en la práctica.
Ejemplo 1: buscar valores que existen solo en la primera matriz
Podemos usar la siguiente sintaxis para definir dos matrices, array1 y array2, y luego devolver solo los valores que existen en array1 y no en array2:
$array1 = @(1,2,3,4,5,6,7,8,9,10)
$array2 = @(6,7,8,9,10,11,12,13)
$only_array1 = $array1 | where {$array2 -NotContains $_}La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Podemos ver que los siguientes valores solo pertenecen a array1 y no a array2:
1, 2, 3, 4, 5Ejemplo 2: buscar valores que existen solo en la segunda matriz
Podemos usar la siguiente sintaxis para definir dos matrices, matriz1 y matriz2, y luego devolver solo los valores que existen en matriz2 y no en < fuerte>matriz1:
$array1 = @(1,2,3,4,5,6,7,8,9,10)
$array2 = @(6,7,8,9,10,11,12,13)
$only_array2 = $array2 | where {$array1 -NotContains $_}La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Podemos ver que los siguientes valores solo pertenecen a array2 y no a array1:
11, 12, 13Ejemplo 3: encontrar valores que existen en ambas matrices
Podemos usar la siguiente sintaxis para definir dos matrices, matriz1 y matriz2, y luego devolver solo los valores que existen en ambas matrices:
$array1 = @(1,2,3,4,5,6,7,8,9,10)
$array2 = @(6,7,8,9,10,11,12,13)
$in_both = $array1 | where {$array2 -Contains $_}La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Podemos ver que existen los siguientes valores en ambas matrices:
6, 7, 8, 9, 10

