У меня есть массив под названием $ 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
}
}
В PowerShell v4 (и, возможно, v3) вы можете сделать следующее:
[PS] > $a.url -contains 'win-coll2.astest.org'
True
[PS] > $a.url -contains 'win-coll7.astest.org'
False
В противном случае, я думаю, самый простой и наименее болезненный способ - это либо foreach
или foreach-object
...