DOBON.NETプログラミング掲示板過去ログ
Powershell2.0 -containsの動作について
題名: Powershell2.0 -containsの動作について
著者: kei
日時: 2013/06/27 0:27:44
ID: 31661
この記事の返信元:
(なし)
この記事への返信:
[31689]
Re[1]: Powershell2.0 -containsの動作について
shu
2013/07/03 8:52:09
ツリーを表示
環境/言語:[Windows 7/Powershell2.0]
分類:[その他]
お世話になります。
-contains演算子の正しい使い方なのか自信がないのですが。
配列の中に特定の要素があるかチェック、という使い方をしています。
$test = "222","333","c:\temp"
$a = "222"
$test -contains $a
True
この動作は理解できるのですが、次のようなパターンでTrueになるのはどういう動作をしているのでしょうか?
$b = get-item c:\temp
$test -contains $b
True
●$b.GetType()とすると、stringではないのですが、どのような動作がおこなわれているのでしょうか?
IsPublic IsSerial Name BaseType
-------- -------- ---- ------
True True FileInfo System.IO.FileSystemInfo
書いていて、なんとなくTostring()しているような気がしてきましたが。。。常にこのようになるのでしょうか?
よろしくお願いします。
題名: Re[1]: Powershell2.0 -containsの動作について
著者: shu
日時: 2013/07/03 8:52:09
ID: 31689
この記事の返信元:
[31661]
Powershell2.0 -containsの動作について
kei
2013/06/27 0:27:44
この記事への返信:
(なし)
ツリーを表示
■No31661に返信(keiさんの記事)
Powershell2.0は使ったことがないので
予想です。
> 書いていて、なんとなくTostring()しているような気がしてきましたが。。。常にこのようになるのでしょうか?
-contains がどこまで判断しているか分かりませんが、$test が文字列の配列なので
そのなかから探すとしたら文字列を渡す必要があるというのが一般的なプログラミング言語の考え方としてあるのでToStringによる文字列化が自動で行われていると
思います。
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[その他]
お世話になります。
-contains演算子の正しい使い方なのか自信がないのですが。
配列の中に特定の要素があるかチェック、という使い方をしています。
$test = "222","333","c:\temp"
$a = "222"
$test -contains $a
True
この動作は理解できるのですが、次のようなパターンでTrueになるのはどういう動作をしているのでしょうか?
$b = get-item c:\temp
$test -contains $b
True
●$b.GetType()とすると、stringではないのですが、どのような動作がおこなわれているのでしょうか?
IsPublic IsSerial Name BaseType
-------- -------- ---- ------
True True FileInfo System.IO.FileSystemInfo
書いていて、なんとなくTostring()しているような気がしてきましたが。。。常にこのようになるのでしょうか?
よろしくお願いします。