2013-04-14 2 views
0

Я хочу сравнить два массива, я хочу знать, есть ли другой способ сделать это проще, чем я?Еще один простой способ сравнения массива

Это мой код:

$array1 = @() 
$array1 += "TEST1 LAPTOP DSGF65" 
$array1 += "TEST2 LAPTOP DJDJD" 
$array1 += "TEST3 LAPTOP DJDJD" 
$array1 += "TEST4 LAPTOP DJDJD" 

$array2 = @() 
$array2 += "xxxxx" 
$array2 += "test3" 
$array2 += "xxxxx" 
$array2 += "xxxxx" 
$array2 += "test1" 
$array2 += "xxxxx" 
$array2 += "xxxxx" 
$array2 += "test2" 
$array2 += "test4" 

$z = 0 

for ($i = 0; $i -lt $array2.count; $i++) 

{ 

    for ($j = 0; $j -lt $array1.count; $j++) 

    { 

    if ($array1[$j].Substring(0,5).ToLower() -eq $array2[$i]) 
    { 
     $z++ 
    } 
    } 

} 

Write-Host $z "elements" 

от записи хоста $ г возврата 4

Спасибо за ваши предложения

ответ

1

Я хотел бы предложить:

$z = 0 
$array2 | 
foreach {$z += ($array1 -match $_).count} 

$z 
+0

Спасибо! Работает ! –

Смежные вопросы