包含演算子(PowerShell 入門)

by HIRO 24. 8月 2008 23:56

この記事は以前 http://blog.hiros-dot.net/ に書いたものです。

今回は包含演算子について説明したいと思います。

包含演算子は、コレクション内に指定した値が含まれているかどうかをTRUE/FALSEで返す演算子で、下記の2つがあります。

演算子 説明
-contains, -icontains, -ccontains コレクションに指定した値が含まれている
-notcontains, -inotcontais, -cnotcontains コレクションに指定した値が含まれていない

演算子の先頭に"i"をつけた場合(-icontains および -inotcontains)と先頭に何も文字を付加しない場合(-contains, -notcontains)は大文字と小文字を区別しません。また、演算子の先頭に"c"を付けた場合(-ccontains, -cnotcontains)は大文字と小文字を区別します。

下記は数値1,2,3,4,5のいずれかに3が含まれているかを評価します。1,2,3,4,5のコレクションには3が含まれているのでTrueが返されます。

PS > 1,2,3,4,5 -contains 3
True

また、下記はコレクションの中に"BANANA"が含まれているかを評価します。

PS > "ORANGE","BANANA","GRAPES" -contains "BANANA"
True

最新のブログ

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

PowerShell | PowerShell入門

スカラー比較(PowerShell 入門)

by HIRO 24. 8月 2008 23:55

この記事は以前 http://blog.hiros-dot.net/ に書いたものです。

今回は比較演算子でちょっとした実験を行ってみたいと思います。

比較演算子の説明は「比較演算子(PowerShell 入門)」を参照願います。

下記のように数値の2と2を-eq演算子で比較した場合、当然これは等しいのでTrueが返されます。

PS > 2 -eq 2
True

では、次のように数値の2と文字列"2"を比較したらどうなるでしょうか?

PS > 2 -eq "2"

この結果はTrueとなります。

ではなぜTrueとなるのでしょうか?

これはPowerShellがスカラー比較を行うためです。(スカラー比較とは2も"2"も同一視すること)

では、下記のようにキャストして比較してみたらどうなるか

PS %gt; [int]2 -eq [string]"2"
True

これも結果としては同じ値と見なされてしまい、Trueを返します。

下記のように数値型と文字列型(GetType()メソッドは型を返します)の比較はスカラー比較は適用できないため、Falseが返されます。

PS > (2).GetType() -eq "2".GetType()
False

最新のブログ

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

PowerShell | PowerShell入門

型演算子(PowerShell 入門)

by HIRO 21. 8月 2008 22:39

この記事は以前 http://blog.hiros-dot.net/ に書いたものです。

型演算子を使用すると、指定した値の型を判定することができます。型演算子には次のものがあります。

演算子 説明
-is 指定された型である
-isnot 指定された型ではない

演算結果はTRUEかFALSEで返されます。

次は数値の3がint型かを判定します。

判定する型は[]で括る必要があることに注意してください。

PS > 3 -is [int]
True

次の式は数値"3"の型がstring型でないことを判定します。

PS > 3 -isnot [string]
True

 

最新のブログ

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

PowerShell | PowerShell入門

置換演算子(PowerShell 入門)

by HIRO 21. 8月 2008 22:37

この記事は以前 http://blog.hiros-dot.net/ に書いたものです。

置換演算子は、指定した値で元の値の一部または全体を置き換えることができます。置換演算子は下記に示すように3つあります。

演算子 説明
-replace 半角英字の大文字/小文字を区別しないで置換する。
-ireplace 半角英字の大文字/小文字を区別しないで置換する。
-creplace 半角英字の大文字/小文字を区別して置換する。

置換演算子は下記のようにして使用します

"置換対象文字列" -replace "置換したい文字(列)", "置換後の文字(列)"

下記は"Hiro"という文字列を"Hero"へ置換します

PS C:\Work> "Hiro" -replace "i","e"

最新のブログ

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

PowerShell | PowerShell入門

範囲演算子(PowerShell 入門)

by HIRO 20. 8月 2008 23:27

この記事は以前 http://blog.hiros-dot.net/ に書いたものです。

PowerShellには「範囲演算子」と呼ばれる演算子があります。

範囲演算子とは2つのピリオド(..)で表し

範囲の開始値..範囲の終了値

のように記述します。

1..5

記述した場合は1から5までという意味になります。

下記は1から5まで繰り返し、その値を表示します。

PS > foreach ( $cnt in 1..5 )
>> {
>> Write-Host $cnt
>> }
>>
1
2
3
4
5

 

最新のブログ

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

PowerShell | PowerShell入門

Calendar

<<  3月 2010  >>
月曜火曜水曜木曜金曜土曜日曜
22232425262728
1234567
891011121314
15161718192021
22232425262728
2930311234

View posts in large calendar
Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010 PowerShell from Japan!!