【PowerShell講座】演算子について

女性

PowerShell講座です。

前回は、変数がオブジェクトとして扱われることを説明しました。

【PowerShell講座】変数について

2019.02.04

第3回目は、演算子についてです。

それでは見ていきましょう。



演算子とは

プログラミング経験のある方はご存知だと思いますが。

演算子は名前の通り、演算を行うための記号です。

それでは基本的なところから紹介していきます。

算術演算子

算術演算子は他のプログラミング言語と同様です。

  • + → 加算
  • – → 減算
  • * → 乗算
  • / → 除算
  • % → 剰余

代入演算子

代入演算子も他のプログラミング言語と同様です。

数学の =(イコール)とは違うということに注意しましょう。

  • = → 左辺に右辺を代入する
  • += → 左辺に右辺の値を加算した結果を格納する
  • -= → 左辺に右辺の値を減算した結果を格納する
  • *= → 左辺に右辺の値を乗算した結果を格納する
  • /= → 左辺に右辺の値を除算した結果を格納する
  • %= → 左辺に右辺の値を剰余した結果を格納する

比較演算子

個人的に違和感があったのが、この比較演算子です。

大昔になんとなく調べた Perl の文字列用比較演算子みたいです。

  • -eq → 等しい
  • -ne → 等しくない
  • -gt → より大きい(>)
  • -ge → 以上(>=)
  • -lt → より小さい(<)
  • -le → 以下(≤)

例えば、適当に下記のような比較をします。

1 -eq 1

この場合、等しいので True が返ります。

下記のような場合、大文字と小文字を区別しません。

"abc" -eq "ABC"

従って、これも True が返ります。

比較演算子( like と match )

こちらも比較演算子なんですが、文字列のみに使うものです。

  • -like → ワイルドカードを使った文字列が一致するか比較(一致すれば True)
  • -notlike → ワイルドカードを使った文字列が一致しないか比較(一致しなければ True)
  • -match → 正規表現を使った文字列が一致するか比較(一致すれば True)
  • -notmatch → 正規表現を使った文字列が一致しないか比較(一致しなければ True)

キャスト演算子

指定した型にキャストすることができます。

下記のような使い方をします。

$a = [int]1.2

この場合、int(整数型)にキャストされ、小数部分が切り捨てられます。

【番外編】PSCustomObject について

PowerShell には、特殊な型が存在します。

PSCustomObject も型の一つです。

例えば、連想配列を使って任意のオブジェクト(カスタムオブジェクト)を作成することができます。

連想配列は順不同という性質があるのですが、PSCustomObject でキャストすれば、順序が保証されます。

詳しくは連想配列のときに書きます。

最後に

いかがでしょうか。

基本的な部分なので退屈かもしれませんが。

コツコツやっていきます。

次回は配列についてです。

【PowerShell講座】配列について

2019.02.04

PowerShell はコマンドプロンプトと違って配列も使えるのです。

PSCustomObject でキャストする例も紹介したいと思っています。