format()

format() 함수는 형식 문자열과 인자를 이용해 새 문자열을 생성하여 반환합니다.

문법

format(FORMAT_STR, PARAM1[, PARAM2, ...])

매개변수

FORMAT_STR
형식 지시자를 포함한 형식 문자열입니다. 반드시 문자열 상수로 지정해야 합니다. 사용 가능한 형식 지시자는 Java Formatter 클래스 명세를 참고하세요.
PARAM1[, PARAM2, ...]
형식 문자열에 적용할 인자입니다. 두 개 이상의 인자를 지정할 수 있습니다. array(), groups() 등 배열을 반환하는 표현식을 단일 인자로 지정하면, 배열의 각 요소가 순서대로 형식 문자열의 인자로 사용됩니다.

설명

format() 함수는 Java의 String.format()과 동일한 방식으로 동작합니다. FORMAT_STR에 포함된 형식 지시자(%s, %d, %f 등)에 따라 각 인자를 변환하여 문자열을 구성합니다.

형식 적용 중 오류가 발생하면 null을 반환합니다.

FORMAT_STR이 문자열 상수가 아닌 경우 오류 코드 91030을 발생시키며 쿼리 파싱에 실패합니다.

오류 코드

91030
FORMAT_STR이 문자열 상수가 아닌 경우 발생합니다.

사용 예

  1. 날짜 형식 문자열 생성

    json "{'y': 2024, 'm': 3, 'd': 29}" | eval result = format("date: %04d-%02d-%02d", y, m, d)
    | # result: "date: 2024-03-29"
    
  2. 배열을 인자로 사용하여 순서 변경

    json "{}" | eval result = format("%3$s-%1$s-%2$s", groups("Mar 29 2024", "(.*?) (.*?) (.*)"))
    | # result: "2024-Mar-29"
    
  3. 형식 오류로 인한 null 반환

    json "{'val': 'text'}" | eval result = format("%d", val)
    | # result: null
    

호환성

format() 함수는 소나 4.0 이전 버전부터 제공되었습니다.