Ben bir array
kelimelerden birini bir string
olup olmadığını varsa gösterir aşağıdaki fonksiyonu:Powershell işlevi beklendiği gibi yürütme değil
function AnyOf ([string] $line, [string[]] $list)
{
Write-Output "AnyOf!"
foreach($item in $list)
{
if($line.Contains($item))
{
Write-Output "Found: $item"
return $true
}
}
return $false
}
Ve bu test etmek:
function main
{
[string[]]$a = @("user1", "user2")
$str = "user1 and user2"
$res = AnyOf($str, $a)
}
Bastırılmak üzere user1
ve user2
görüntülerini görmesini beklerim ancak hiçbir şey yazdırılmaz. Write-Output "AnyOf!"
hiçbir zaman çalıştırılmadığı için işlev çağrılmadığı anlaşılıyor. Ben neyim ... Ben işlevi denir görebilirsiniz
$res = AnyOf($str, $a)
ancak yineleme gerçekleşmesi görünmüyor:
AnyOf($str, $a)
yerine: Ancak
, ben yürüttüğünüzde yanlış mı yapıyorsun? , Powershell işlevleri standart kongre İkincisi $<<nameOfFunction>> <<param1>> <<param2>>
olduğunu
AnyOf $str $a
olarak işlevini çağırır ()
kullanılarak adlandırılır değil tüm