[PowerShell Core 入門] while 文

PowerShell Core PowerShell Core
PowerShell Core

while 文は、前回紹介した for 文と同様に、繰り返し処理を実施する際に使用します。

今回は、while 文の使用方法について説明します。

while の構文

while 文は、指定した条件が満たされる間、処理を繰り返して実行します。

以下に、PowerShell Core における while 文の書式を示します。

while (条件式){
  ...繰り返し処理
}

条件式で使用する演算子

while 文の条件式で使用できる演算子は、if 文と同様です。

以下に、使用可能な演算子を示します。

PowerShell C# 説明
-eq == 等しい
-ne != 等しくない
-gt > より大きい
-ge >= 以上
-lt < より小さい
-le <= 以下
-like なし ワイルドカードと等しい
-notlike なし ワイルドカードと等しくない
-match なし 正規表現と等しい
-notmatch なし 正規表現と等しくない
-contains なし 指定した値が含まれる
-notcontains なし 指定した値が含まれない

while 文の使用例

以下に while 文の使用例を示します。

この例では、変数 $x が 10以下の間繰り返し処理を実行します。

$x = 1

while ( $x -le 10) {
  Write-Host $x
  $x++
}

break キーワードによる処理の中断

break キーワードを使用すると、while 文を中断して、繰り返し処理の外側へ抜けることができます。

以下は、変数 $x が 10以下の間繰り返し処理を行う while 文ですが、変数 $x が 5 と等しい時に break で繰り返し処理を中断します。
結果として1〜4までしか出力されません。

$x = 1

while ( $x -le 10) {
  if ( $x -eq 5 ) { break }
  Write-Host $x
  $x++
}

continue による処理の継続

continue キーワードを使用すると、while 文を中断して、繰り返し処理の先頭へ戻って処理を継続します。

以下は、変数 $x が 10以下の間繰り返し処理を行う while 文ですが、ループ変数 $x が 5 と等しい時に繰り返し処理の先頭に戻って処理を継続します。
結果として 5 は出力されません。

$x = 0

while ( $x -le 10) {
  $x++
  if ( $x -eq 5 ) { continue }
  Write-Host $x
}

まとめ

while 文も for 文と同様によく使用する繰り返し処理の1つです。
これを機会にマスターしましょう。

コメント

  1. […] while 文は 繰り返し処理が始まる前に条件判断がありますが、do while […]

タイトルとURLをコピーしました