繰り返し(ForEach)
3217 views
この記事では、ForEachによる繰り返し(各要素について繰り返す)について説明します。
【できるようになること】
- リストをもとにして繰り返しを行う
ForEachを利用する場面
以下のようなリスト/配列/二次元配列を処理する際に使用します。
・スプレッドシートのx行目からy行目までの情報を1行ごとに処理
・スクレイピングした情報を1つずつ順に処理
・CSVを1行ごとに処理
リスト指定の繰り返し設定
ForEachを利用したワークフロー
下記のようなリストに対してForEachが有効です。
- スプレッドシート/エクセルから取得したリストでループ
- スクレイピングしたデータに対してループ
このような情報を処理するために、ForEachの仕組みを紹介します。
「繰り返すリスト(iterable)」に設定されたリストから、要素を1つずつ取り出して「要素を格納する変数(element)」に格納します。
処理が完了すると自動的に変数の値を次の要素に書き換えを行います。
※上記(二次元配列)の例では、格納された要素が配列 [“名前”, “挨拶文”] となっています。
そのため、1列目(名前)のみを取得する場合は、ForEach内部で${row[0]}
と記述します。
二次元配列についての詳細は、こちらをご参照ください。
FoeEachでは、「繰り返し回数を格納する変数名(withIndex)」を設定することにより、現在の繰り返し回数を取得することが可能です。
繰り返し回数は、ForEach範囲内のアクションで
${繰り返し回数を格納する変数名}
とすることによって取得できます。
withIndexの値は、繰り返し1回目では0,繰り返し2回目では1といった具合で、1ずつ加算されます。
iterable(繰り返すリスト) = [“太郎”,”次郎”,”三郎”] | ||
繰り返し回数 | element(要素を格納する変数名)の値 | withIndex(繰り返し回数を格納する変数名)の値 |
---|---|---|
1回目 | 太郎 | 0 |
2回目 | 次郎 | 1 |
3回目 | 三郎 | 2 |
以下記事にて、ForEachを利用したワークフローの例を紹介しています。
冒頭の画像のワークフローの実行結果です。
# 各要素について繰り返す +for_each_1: for_each>: name: ["太郎","次郎","三郎"] withIndex: index _do: # テキストを作成 +text_1: action>: Text text: "${name}\n${index}"
<ForEach>各要素を繰り返す
このページは役に立ちましたか?
サイトを見て解決しない場合はAUTOROにログインし、チャットよりお問い合わせください。