arrays - 比较数组时删除匹配项

标签 arrays powershell compare powershell-4.0

我想帮助比较两个数组,比如用户,并抛出两个数组中存在或匹配的任何用户,然后将结果扔到最终数组中。例如:

###define arrays
$array1 = @("bill","eric","james","sarah")
$array2 = @("bill","scott","sarah","nancy")

###Combine/Filter? arrays and remove users that exist in both arrays
$result = ($array1 + $array2 | some fancy match removal goes here)
$result
eric,james,scott,nancy

我想确保在组合时从两个数组中完全删除匹配项。因此,如果两个数组中都存在“sarah”,我想将她从最终结果中完全删除。这可能吗?

最佳答案

使用Compare-Object提取在两个源数组中唯一的元素:

$result = Compare-Object $array1 $array2 | Select-Object -Expand InputObject

关于arrays - 比较数组时删除匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37190495/

相关文章:

powershell - Format-Table -GroupBy 在单行上显示数组属性

java - 按通用属性的属性对对象进行排序

linux - 如何使用 meld 比较不同目录中的两个同名文件(不给出路径)?

arrays - powershell多维数组和foreach

javascript - 更改一个变量会更改以相同方式定义的所有其他变量

python字符串将多个数组表示为numpy数组

powershell - PowerShell-从输出中删除文本

azure - 删除/删除 Azure 警报规则

arrays - 控制 PowerShell 中函数返回的类型

JAVA,比较两个字符串