[PowerShell Core 入門] foreach 文

PowerShell Core PowerShell Core
PowerShell Core

foreach 文は配列のようなコレクションに格納されている値やオブジェクトを一つずつ処理する際に使用します。

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

foreach の構文

foreach 文は、指定したコレクションから値を1つずつ取り出し、すべて取り出すまでの間、処理を繰り返して実行します。

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

foreach (変数 in コレクション){
  ...繰り返し処理
}

foreach 文の使用例

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

この例では、配列変数 $weekday に入っている値を、1つずつ変数 $w に取り出しながら処理を行います。

よって、Mon, Tue, Wed, Thu, Fri  が順番に表示されます。

$weekday = "Mon","Tue","Wed","Thu","Fri"

foreach ($w in $weekday) {
  Write-Host $w
}

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

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

以下は、配列変数 $weekday に格納されている全ての値を取り出すまで繰り返し処理を行います。ただし、変数 $w が “Wed” と等しい時に break で繰り返し処理を中断します。
結果として Mon, Tue しか出力されません。

$weekday = "Mon","Tue","Wed","Thu","Fri"

foreach ($w in $weekday) {
  if ( $w -eq "Wed" ) { break }
  Write-Host $w
}

continue による処理の継続

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

以下は、配列変数 $weekday に格納されている全ての値を取り出すまで繰り返し処理を行います。ただし、変数 $w が “Wed” と等しい時は continue で繰り返し処理の先頭に戻って処理を継続します。
結果として Mon, Tue, Thu, Fri が表示されます。

$weekday = "Mon","Tue","Wed","Thu","Fri"

foreach ($w in $weekday) {
  if ( $w -eq "Wed" ) { continue }
  Write-Host $w
}

まとめ

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

コメント

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