Filter node
フィルターノードは、フロー内を流れるデータを制御します。

-
Field: フィルターノードへの入力を提供するフィールドです。フロー内で現在のノードより前に配置されている任意のノードのフィールドを指定できます。
ヒントプラスアイコン(+)を選択して、追加したいフィールドを検索してください。フィールドタイプや値の参照方法については、Node parameters を参照してください。
-
Filter criteria: 出力に含める、または除外するデータを判断するためにフィルターノードが適用する条件です。同じグループ内の条件は AND で結合されます。別のグループ(OR 文)を追加して、グループ同士を OR で結 合できます。リンクアイコンを使用して、条件を 1 つの単位としてグループ化したり、分割したりします。
-
Test: ノードをテストできます。
次の例では、フィルターノードはフロー内の 2 番目のノード(2. DescribeInstances)の出力をデータソースとして取得し、フィルター条件 Reservations.Groups.GroupName == "my-group" を適用し、その条件を満たすインスタンス ID のリスト(参照フィールド: Reservations.Instances.InstanceId)を出力します。

Filter operators
フィルター条件では、比較演算子を使用してフィールド値を照合します。利用可能な演算子は、選択したフィールドのタイプ(例:string・number・timestamp・boolean・list・map)によって異なります。
| Operator | Description |
|---|---|
== | 等しい |
!= | 等しくない |
> | より大きい |
< | より小さい |
>= | 以上 |
<= | 以下または等しい |
in | 値が許可された値のリストに含まれている |
not in | 値が指定されたリストに含まれていない |
not every in | リスト内の少なくとも 1 つの要素が許可された値の範囲外である |
is null | フィールドが null または存在しない |
is not null | フィールドが存在し、かつ null ではない |
contains | リストまたは文字列がその値を含む |
not contains | リストまたは文字列がその値を含まない |
length | 長さが指定した数値と等しい |
length > | 長さが指定した数値より大きい |
length < | 長さが指定した数値より小さい |
has key | Map またはオブジェクトが指定したキーを持つ |
has value | Map またはオブジェクトが指定したキーに対する値を持つ |
starts with | 文字列が指定した値で始まる |
ends with | 文字列が指定した値で終わる |
matches regex | 文字列が指定した正規表現に一致する |
starts with・ends with・matches regex では、大文字小文字を無視するケースインセンシティブマッチングを有効にできます。matches regex では、標準的な RE2 パターン構文を使用してください。詳細は re2 のドキュメントを参 照してください。
in 演算子を使用すると、リストの一部でも条件に合致する要素があるかどうかを検索できます。not every in 演算子を使用すると、リスト内の少なくとも 1 つのアイテムが許可された値の範囲外にあるケースを検出できます。
not every in を使用する場合、オプションで Include results with empty or null values を選択して、フィールドが空または null のアイテムも一致させることができます。このオプションはデフォルトではオフのため、有効にしない限り、値が空のアイテムは除外されます。