[FAQ CENTER トップ]
[Powershell FAQ トップへ]



【Powershell】IndexOf の落とし穴



更新日:2019/06/11


IndexOf の落とし穴




IndexOfは

・見つからない場合の戻り値は -1
・先頭で見つかった場合は 0

となります。先頭で見つかった場合は 0 が戻りますが、見つからなかった場合 = 0 と間違えやすいので注意してください。

■見つかった場所の先頭からの場所。全角、半角ともに1とカウントされる。
"abcde".IndexOf("de")
3

■先頭で見つかったら0

"abcde".IndexOf("ab")
0

■見つからない場合は-1

"abcde".IndexOf("xyz")
-1


■間違ったコード
先頭で見つかるから 0 が戻るが、 $false として見つからないと誤判断される。

if ("abcde".IndexOf("ab"))
{

write-host ("見つかりました")
}



■正しいコード

if ("abcde".IndexOf("ab") -ne -1)
{

write-host ("見つかりました")
}









[Powershell FAQ トップへ]
[FAQ CENTER トップ]


本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。) Copyright(c) tooljp.com 2007-2018