Powershellのif文の書き方を解説していきます。
※このページに掲載されいているプログラムは、
PowerShellのバージョン:5.1.19041.3693 にて動作確認済みです。
ifの構文
[crayon-673ef5444768d344519221/]
ifのカッコ内にある条件が満たす($trueになる)と、{}内の処理が行われます。
else や elseifを用いると、様々な条件分岐が可能です。
elseif、elseの構文
[crayon-673ef54447693644610167/]
メモ
- ifはIfと頭文字を大文字にしても同様の処理がされます。
- elseとifは空白を入れず、詰めてください。
- 1番最初に条件1が判定され、条件を満たすと処理1が動作して終了します。
- 条件1が処理されなかった場合、
条件2が判定され条件を満たすと処理2が動作して終了。 - 条件1も条件2も満たさない場合は、処理3が動作して終了します。
- elseif分は1つ以上記述可能、省略可能です。
- elseは1つの未記述でき、省略可能です。
比較演算子
比較演算子とは、左右の値を比較するときに使う演算子のことです。
Powershellで使用できる比較演算子は以下です。
Powershell | C/C++ | 説明 |
-eq | == | 等しい |
-ne | != | 等しくない |
-lt | < | より小さい、未満 |
-le | <= | 以下 |
-gt | > | より大きい |
-ge | >= | 以上 |
-like | なし | ワイルドカードでの比較で一致 |
-notlike | なし | ワイルドカードでの比較で一致しない |
-match | なし | 正規表現での比較で一致 |
-notmatch | なし | 正規表現での比較で一致しない |
Powershell特有のgeやltなどがわかりずらいです。
それぞれの英語の意味を理解することで覚えやすいと思いますので、
以下を参考にしてみてください。
コマンドの意味
eq:equal
ne:not equal
lt:less than
le:less than or equal
gt:greater than
ge:greater than or equal
比較演算子の使用例
テストの点数を入力して、点数に応じた評価を表示する例です。
[crayon-673ef54447694402226860/]
実行結果
[crayon-673ef5444769a614888916/]
like、matchの使用例
入力したテキストに日本が文頭や文末に存在するかをチェックする例です。
[crayon-673ef5444769c188953381/]
実行結果
[crayon-673ef5444769d164405115/]
論理演算子
論理演算子とはTrue/Falseのような真偽値や2つ以上の条件式を組み合わせ、その真偽を判定するための演算子です。
また、ブール演算子と呼ばれます。
以下に、論理演算子の一覧をまとめています。
Powershell | C/C++ | 説明 |
-and | && | 全ての条件を満たすとOK(論理積) |
-or | || | どちらかの条件を満たすとOK(論理和) |
-xor | ^ | どちらかを満たすとOK、それ以外はNG(排他的論理和) |
-not | ! | 条件を逆転させる(否定) |
論理演算子を利用した条件分岐の使用例
国語と算数のテストの点数を入力して、評価を表示する例です。
[crayon-673ef5444769e243916441/]
実行結果
[crayon-673ef544476a1565018738/]
まとめ
if文はどのプログラムでも使用する構文なので、
使い方をマスターすれば他のプログラミング言語にも対応できます。
何度も使って慣れていきましょう。
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"Windows PowerShell超入門 [4.0対応]","b":"","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/51VSk5xJ7xL._SL500_.jpg","\/41KA86nRKIL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4844336231","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4844336231","a_id":2468379,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/Windows%20PowerShell%E8%B6%85%E5%85%A5%E9%96%80%20%5B4.0%E5%AF%BE%E5%BF%9C%5D\/","a_id":2572289,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=Windows%20PowerShell%E8%B6%85%E5%85%A5%E9%96%80%20%5B4.0%E5%AF%BE%E5%BF%9C%5D","a_id":2572285,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"95jV0","s":"s"});
プログラミング知識を身に着けたい人におすすめの無料スクールはこちら