flatten()

ネストされた配列やコレクションを再帰的に巡回して、すべての要素を単一レベルの配列にフラット化します。

構文

flatten(ARRAY)

パラメーター

ARRAY
フラット化する配列またはコレクション。

説明

flatten() 関数は、入力配列に含まれるすべてのネストされた配列を再帰的に巡回し、最上位の配列にフラット化した結果を返します。配列の中に配列が存在する場合、内部配列の要素を取り出して最上位の配列に追加し、この処理をすべてのネストが解消されるまで繰り返します。

入力値が配列やコレクションでない単一の値の場合は、その値をそのまま返します。入力値が null の場合は null を返します。

エラーコード

該当なし

使用例

  1. 単純なネストされた配列をフラット化

    json "{}" | eval result = flatten(array(1, array(2, 3), 4))
    | # result: [1, 2, 3, 4]
    
  2. 2段階以上ネストされた配列をフラット化

    json "{}" | eval result = flatten(array(1, array(2, array(3, 4)), 5))
    | # result: [1, 2, 3, 4, 5]
    
  3. null 入力

    json "{}" | eval result = flatten(null)
    | # result: null
    

互換性

flatten() 関数は Sonar 4.0以前のバージョンから提供されています。