現在PowerShellの文字列と比較していますが、-eqを-containsではなく誤って使用しましたが、期待どおりの結果が得られました。PowerShell Substiture -eq for-forは文字列と配列を比較するときに使用します
コード例:
$arr = "Fred","Bob"
if($arr -eq "Bob")
{
Return $true
}
Else
{
Return $false
}
すなわち上記からの出力が文字列「フレッド」を比較したが、「スティーブ」は$の偽になりますと比較しますと、真$されます。私が-containsを使うと同じことが起こります。
PowerShellは「助けてくれました」と思われ、-eqを-containsにしました。この仮定は正しいですか?
第2に、他の言語(私の知る限り)がそうでない場合、PowerShellがこれを行う理由はありますか?
乾杯、
ピート
P.S.同様に、-containsを使用して文字列を別の文字列と比較すると、2つの文字列が完全に一致する場合にのみ$ trueが返されます。
[演算子への入力がスカラー値の場合、比較演算子はブール値を返します。入力が値のコレクションである場合、比較演算子は一致する値を返します。](https://msdn.microsoft.com/powershell/reference/5.1/microsoft.powershell.core/about/about_comparison_operators) – PetSerAl