我有一个名为 $a 的数组
echo $a
给出:
url load
--- ----
win-coll2.astest.org 9
win-coll.astest.org 110
win-coll4.astest.org 110
win-coll5.astest.org 140
win-coll3.astest.org 410
现在我想知道,如果数组包含一个字符串,例如:
win-coll2.astest.org
应该导致true
并且win-coll7.astest.org
应该导致false
有没有一种正确的方法可以在没有的情况下做到这一点foreach
?
使用 foreach:
$IsInArray = false
$ProofString = "win-coll2.astest.org"
foreach( $item in $a){
if($item.url -eq $ProofString){
$IsInArray = true
}
}
答案1
在 powershell v4 (也可能是 v3) 中,您可以执行以下操作:
[PS] > $a.url -contains 'win-coll2.astest.org'
True
[PS] > $a.url -contains 'win-coll7.astest.org'
False
否则,我认为最简单、最不痛苦的方法是做一个foreach
或一个foreach-object
......