Powershell 从另一个字符串变量中减去一个字符串变量

Powershell 从另一个字符串变量中减去一个字符串变量,powershell,Powershell,如何从$a中删除$b中的项目 $a = "aa","bb","cc","dd","ee" $b = "bb","dd" 你知道一个好办法吗 谢谢 使用Compare Object命令是实现这一点的最简单的方法,尽管它不是非常健壮,但如果这是用于生产,您可能需要推出一个更深思熟虑的解决方案 $c = Compare-Object -ReferenceObject $a -DifferenceObject $b | ? SideIndicator -eq '<=' | Select -Ex

如何从
$a
中删除
$b
中的项目

$a = "aa","bb","cc","dd","ee"

$b = "bb","dd"
你知道一个好办法吗


谢谢

使用
Compare Object
命令是实现这一点的最简单的方法,尽管它不是非常健壮,但如果这是用于生产,您可能需要推出一个更深思熟虑的解决方案

$c = Compare-Object -ReferenceObject $a -DifferenceObject $b | ? SideIndicator -eq '<=' | Select -Expand InputObject
另一种方法是使用
Group Object
命令,并选择唯一的条目,但这将包括
$b
中但不在
$a
中的条目

$c = $a+$b | Group-Object | ? Count -eq 1 | Select -Expand Group
所有这些方法都将输出:

aa
cc
ee

到目前为止,您尝试了什么?一个foreach循环,并将每一行与if命令进行比较。我认为应该有一个更简单的方法,可能是重复的,你实际上有两个字符串数组,我想你不知道这一点,所以无法通过搜索找到答案。我投票决定作为一个副本结束,因为这已经涵盖了以前。
aa
cc
ee