セレクター
位置、範囲、ランダムなサンプル、ルール、名前を使って、リストから 1 つの項目や一部の項目を選びます。選んだ項目と残りを 2 つの出力に分けて送ります。無料です。
セレクター(Selector)ノードは、リストから 1 つの項目、または複数の項目を選び出します。位置、範囲、ランダム、フィールドに対するルール、名前のいずれかで選び方を指定します。セレクターは、選んだ項目を選択済み出力に、それ以外のすべての項目を残り出力に送ります。すぐに実行され、モデルを呼び出さず、クレジットもかかりません。
使いどころ
- 同じ選択を複数のノードに渡すとき。複数の接続に同じ設定をする代わりに、セレクターを 1 つ使います。
- リストからランダムに項目を選び、後でシードを使って同じ選択を再現したいとき。
heroという名前のキャラクターや、スコアが 15 以上のすべての項目など、フィールドが特定の値を持つ項目を選びたいとき。- 選ばなかった項目を、残りを通して別の場所に送りたいとき。
- 別のノードから届く数値を使って、短いリストを循環させたいとき。
クイックスタート
ノードを追加する
キャンバス上で Tab を押し、自動化 › リストとバッチ処理 › セレクターを選びます。
リストを接続する
リストをリスト入力に接続します。たとえば、リスト(List)、テキストを分割(Split Text)、リストをフィルター(Filter List)、または出力をリストに設定したフィールドを抽出(Extract Field)ノードから接続します。
モードを選ぶ
設定パネルを開き、モードを選んで、そのモードのフィールドを入力します。各モードについては、以下で説明します。
出力を接続して実行する
選択済みを次のノードに接続します。ほかの項目も必要な場合は、残りを別の分岐に接続します。実行後は、パネルの前回の実行に、「選択 2 件 · 残り 3 件」のように件数が表示されます。
入力と出力
| 入力/出力 | 受け取るもの/送るもの | 説明 |
|---|---|---|
| リスト | テキスト、画像、動画、オーディオ、JSON の項目のリスト | 選ぶ元になるリストです。複数のノードを接続した場合は、接続した順番にリストがつなげられます。 |
| 選択済み | リスト | モードが選んだ項目です。1 つの項目を選ぶモードでは、項目が 1 つのリストが送られます。 |
| 残り | リスト | 選ばれなかったすべての項目を、元の順番で並べたものです。 |
選択済みと残りを合わせると、常にすべての入力項目がそろい、両方に入る項目はありません。セレクターは値ではなく位置で分けるので、重複した項目も正しい側に振り分けられます。たとえば、a, b, a, c に対して 2〜3 の範囲を指定すると、選択済みは b, a、残りは a, c になります。
モード
| モード | フィールド | 選ぶ数 | 例 |
|---|---|---|---|
| 項目(単一のインデックス) | インデックス | 1 個 | a, b, c, d でインデックスを last-1 にすると、c が選ばれます。 |
| 範囲(開始/終了/ステップ) | 開始、終了、ステップ | 複数 | a, b, c, d, e で 2 から 4 までにすると、b, c, d が選ばれます。 |
| リスト(カンマ区切りの式) | 式 | 複数 | a, b, c, d, e で式を 1, 3, 5 にすると、a, c, e が選ばれます。 |
| ランダム(シード指定) | シード(任意)、個数 | 個数で指定した数 | a, b, c, d でシードを 42、個数を 2 にすると、常に同じ 2 つの項目が選ばれます。 |
| 剰余(インデックスで循環) | 除数 | 1 個 | a, b, c で除数を 5 にすると、c が選ばれます。 |
| 条件(フィルター) | フィールド、演算子、値、一致する項目、大文字と小文字を区別 | 1 個、または一致したすべて | score フィールドを持つ項目で、score が 15 以上、一致する項目をすべてにすると、スコアが 15 以上のすべての項目が選ばれます。 |
| 名前付きキー(検索) | フィールド、値 | 0 個か 1 個 | name フィールドを持つキャラクターで、name = hero とすると、hero が選ばれます。 |
項目
インデックスは 1 から数えます。3 のような数値を書くか、last、last-1、last-2 などで末尾から数えます。リストの末尾を超えるインデックスでは、最も近い有効な項目が使われます。読み取れないインデックスでは最初の項目が使われ、ノードに「Invalid index expression — used first item」という警告が表示されます。
範囲
開始と終了はどちらも範囲に含まれ、1 から数えます。ステップを負の値にすると、逆向きに進みます。たとえば、last から 1 までステップ -1 にすると、リスト全体が逆順になります。ステップ 0 は 1 として扱われます。前向きに進む範囲に負のステップを指定した場合や、後ろ向きに進む範囲に正のステップを指定した場合は、何も選ばれません。
リスト
式では、単一の位置と範囲をカンマで区切って組み合わせます。たとえば、1, 3..5, last のように書きます。位置は書いた順番のまま保たれ、2 回書いた位置は 2 回選ばれます。ほかにも、1..5、1 つおきに項目を選ぶ 1..10:2、最後の項目以外をすべて選ぶ 1..last-1 などの例があります。読み取れない部分があると、ノードはすべての項目を選びます。
ランダム
個数は抽出する項目の数で、デフォルトは 1 です。同じ項目が 2 回以上選ばれることはなく、リストより大きい個数を指定すると、リスト全体が選ばれます。シードを指定すると、同じシードと同じリストからは、常に同じ項目が選ばれます。シードを指定しない場合は、実行のたびに抽出し直します。
剰余
剰余は、除数をリストの長さで割った余りを使って、1 つの項目を選びます。余りは、0 から数えた位置です。たとえば、3 項目のリストで除数を 5 にすると、余りは 2 になり、3 番目の項目が選ばれます。別のノードから届く、変化する数値を使って、短いリストを循環させるときに使います。除数が数値でない場合は、最初の項目が使われ、警告が表示されます。
条件
条件は、フィールドがテストに合格した項目を残します。項目全体をテストするには、フィールドを空欄にします。演算子は、等しい、等しくない、より大きい、より小さい、以上、以下、含む、含まない、で始まる、で終わる、正規表現に一致、存在する、存在しないのいずれかです。一致する項目を最初にすると、セレクターは最初に一致した項目だけを選びます。すべてにすると、一致したすべての項目を選びます。何にも一致しないルールでは、すべての項目が残りに送られます。
名前付きキー
名前付きキーは、名前で検索するための、条件の簡略版です。フィールドが値と等しい最初の項目を選びます。一致するものがない場合、選択済みは空になり、すべての項目が残りに送られます。
別のノードの値を使う
4 つのフィールドでは、{CharacterName} のように、別のノードのラベルを波かっこで囲んで指定できます。セレクターの実行時に、波かっこの部分がそのノードの値に置き換わります。
| フィールド | モード | 主な用途 |
|---|---|---|
| 除数 | 剰余 | 別のノードの数値を使って、リストを循環させます。 |
| 値 | 条件 | 各項目を、別のノードの出力と比べます。 |
| 値 | 名前付きキー | {CharacterName} など、別のノードが指定した名前の項目を検索します。 |
| シード | ランダム | {Project} など、別のノードの値によって、ランダムな選択が決まるようにします。 |
それ以外のフィールドは、入力したとおりに読み取られます。詳しくはプロンプト変数を読んでください。
設定が間違っている場合
セレクターが、設定を理由にワークフローを止めることはありません。問題ごとに、安全な結果が決まっています。
| 状況 | 結果 |
|---|---|
| リストが接続されていない、またはリストが空 | 選択済みと残りは、どちらも空になります。ノードはエラーなしで完了します。 |
| 読み取れないインデックス | 最初の項目。ノードに警告が表示されます。 |
| 末尾を超えるインデックス | 最も近い有効な項目。 |
| 数値でない除数 | 最初の項目。ノードに警告が表示されます。 |
| リストより大きい個数 | リスト全体。 |
| 何にも一致しない条件、または名前付きキー | 選択済みは空になり、残りにすべての項目が入ります。 |
ノードが失敗するのは、予期しないエラーが起きたときだけです。その場合は、エラーメッセージが表示されます。
セレクターと接続の設定の使い分け
どの接続でも、項目モードや、個別と一括の範囲タブとリストタブを使って、項目を選べます。接続の設定とセレクターは、同じ位置のルールを使います。
| 接続の設定を使う場合 | セレクターノードを使う場合 |
|---|---|
| 1 つの次のノードに、位置、範囲、リストによる簡単な選択が必要なとき | 同じ選択を、複数の次のノードに渡すとき |
| 選択をキャンバス上に表示したくないとき | ラベル付きのノードとして表示するほど、選択が重要なとき |
| 項目、範囲、リストで十分なとき | ランダム、剰余、条件、名前付きキーが必要なとき |
| 出力が 1 つで十分なとき | ほかの項目も残りで受け取りたいとき |
すべての接続モードについては、リストとバッチ処理を読んでください。
クレジット
セレクターは、どのエディションでも無料です。
ヒント
- 選んだ項目ごとに次のノードを実行する:選択済みは常にリストを送ります。選んだ項目ごとに次のノードを 1 回ずつ実行するには、選択済みからの接続を個別にします。
- 件数を確認する:前回の実行には、選択済みと残りに送られた項目の数が表示されます。ルールを試すには、これが最も手早い方法です。
- 多くを残すならフィルター、1 つを選ぶならセレクター:複数の条件に一致するすべての項目を残すには、リストをフィルターを使います。1 つの項目や一部分を選ぶには、セレクターを使います。
よくある質問
関連ページ
リスト
リストをフィルター
フィールドを抽出
ルーター
リストとバッチ処理
最終更新