subarray()

인자로 지정한 배열의 부분 배열을 반환합니다.

문법

subarray(ARRAY_EXPR, INT_START, [INT_END])
ARRAY_EXPR
배열을 반환하는 표현식
INT_START
배열에서 잘라낼 구간의 시작 인덱스 번호. 번호는 0부터 시작합니다.
INT_END
배열에서 잘라낼 구간의 끝 인덱스 번호. 끝 인덱스 번호의 배열 요소는 부분 배열에 포함되지 않습니다.

설명

배열 요소의 인덱스 번호는 0부터 시작합니다. 5 개의 요소를 갖는 배열에서 인덱스 번호는 처음부터 0, 1, 2, 3, 4가 됩니다. INT_START, INT_END에 음수를 지정할 수 있습니다. 5 개의 요소를 갖는 배열에서 음수로 부여하는 인덱스 번호는 처음부터 -5, -4, -3, -2, -1입니다.

사용 예

  1. 일반적인 사용 예

    json "{}"
    | eval parent=array(1, 2, 3, 4, 5)
    | eval child=subarray(parent, 2)
    | # 반환 값: 
        parent: [1, 2, 3, 4, 5]
        child: [3, 4, 5]
    
    json "{}"
    | eval arr=subarray(array(1, 2, 3, 4, 5), 2, 4)
    | # 반환 값: 
        arr: [3, 4]
    
    json "{}"
    | eval arr=subarray(array(1, 2, 3, 4, 5), 1, -1)
    | # 반환 값: 
        arr: [2, 3, 4]
    
  2. 유효 범위를 벗어나는 INT_START 또는 INT_END를 지정한 예

    json "{}"
    | eval arr=subarray(array(1, 2, 3, 4, 5), 5)
    | # 반환 값: null
    
    json "{}"
    | eval arr=subarray(array(1, 2, 3, 4, 5), 0, 5)
    | # 반환 값:
        arr: [1, 2, 3, 4, 5]