PowerShellコマンドレット虎の巻
HOME > PowerShell構文 > foreach構文

foreach構文

foreach構文は、コレクションの各要素に対して処理を行いたい時に使用します。

解説

foreach文は、コレクション内の各要素に対して繰り返し処理を行うためのループ構文です。

構文

(foreach構文)
foreach (<要素変数> in <コレクション>) { <各要素に対して実行するコード> }

※foreach文の各部分の詳細は以下です。

<要素変数>
ループの各反復でコレクションの現在の要素を保持する変数
<コレクション>
配列やリストなどのコレクション

サンプル

配列内の各要素を順番に取り出して出力する

$fruits = @("みかん", "りんご", "もも") foreach ($fruit in $fruits) { Write-Host "Fruit: $fruit" }

(結果)

Fruit: みかん Fruit: りんご Fruit: もも

二次元配列の各要素を順番に取り出す

$matrix = @( @(1, 2, 3), @(4, 5, 6), @(7, 8, 9) ) foreach ($row in $matrix) { foreach ($item in $row) { Write-Host "Item: $item" } }

(結果)

Item: 1 Item: 2 Item: 3 Item: 4 Item: 5 Item: 6 Item: 7 Item: 8 Item: 9

ディレクトリ内のファイルを取得して各ファイル名を表示する

$files = Get-ChildItem -Path "C:\SampleDir" foreach ($file in $files) { Write-Host "File: $($file.Name)" }

備考

  • 大文字小文字は区別しないので、foreach、Foreach、FOREACHどのパターンで書いても問題ありません。
  • foreach構文の代わりにfor文を使用することもできます。

関連項目

  • PowerShell構文
  • if構文:条件分岐を行う
  • for構文:ループ処理を行う
  • foreach構文:コレクションの各要素に対して処理を行う
  • switch構文:特定の式の値に基づいて多分岐を行う
  • while構文:特定の条件が満たされている間、繰り返し処理を行う
  • do-while構文:少なくとも一度はループ内の処理を実行することを保証する