공식 표현식에 문자열 함수 사용 - AWS IoT SiteWise

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

공식 표현식에 문자열 함수 사용

변환지표에서는 다음 함수를 사용하여 문자열에 대한 작업을 할 수 있습니다. 자세한 내용은 수식에 문자열 사용 단원을 참조하십시오.

중요

공식 표현식은 실수 또는 문자열 값만 출력할 수 있습니다. 중첩 표현식은 문자열과 같은 다른 데이터 유형을 출력할 수 있지만 공식 전체는 숫자나 문자열로 평가되어야 합니다. jp 함수를 사용하여 문자열을 숫자로 변환할 수 있습니다. 부울 값은 1(참) 또는 0(거짓)이어야 합니다. 자세한 내용은 정의되지 않은 값, 무한 값 및 오버플로우 값 단원을 참조하십시오.

함수 설명

len(s)

문자열 s의 길이를 반환합니다.

find(s, substring)

문자열 s에 있는 문자열 substring의 인덱스를 반환합니다.

contains(s, substring)

문자열 s에 문자열 substring가 포함되어 있으면 1를 반환하고, 그렇지 않으면 0를 반환합니다.

upper(s)

문자열 s를 대문자 형태로 반환합니다.

lower(s)

문자열 s를 소문자 형식으로 반환합니다.

jp(s, json_path)

sJsonPathjson_path표현식으로 문자열을 평가하고 결과를 반환합니다.

이 함수를 사용하여 다음을 수행합니다.

  • 직렬화된 JSON 구조에서 값, 배열 또는 객체를 추출합니다.

  • 문자열을 숫자로 변환합니다. 예를 들어, 공식 jp('111', '$')에서 숫자로 111을 반환합니다.

JSON구조에서 문자열 값을 추출하여 숫자로 반환하려면 중첩 jp 함수를 여러 개 사용해야 합니다. 외부 jp 함수는 JSON 구조체에서 문자열을 추출하고, 내부 jp 함수는 문자열을 숫자로 변환합니다.

문자열 json_path는 문자열 리터럴을 포함해야 합니다. 즉, json_path는 문자열로 평가되는 표현식일 수 없습니다.

예시
  • jp('{"status":"active","value":15}', '$.value')에서 15를 반환합니다.

  • jp('{"measurement":{"reading":25,"confidence":0.95}}', '$.measurement.reading')에서 25를 반환합니다.

  • jp('[2,8,23]', '$[2]')에서 23를 반환합니다.

  • jp('{"values":[3,6,7]}', '$.values[1]')에서 6를 반환합니다.

  • jp('111', '$')에서 111를 반환합니다.

  • jp(jp('{"measurement":{"reading":25,"confidence":"0.95"}}', '$.measurement.confidence'), '$')에서 0.95를 반환합니다.

join(s0, s1, s2, s3, ...)

구분 기호와 함께 연결된 문자열을 반환합니다. 이 함수는 첫 번째 입력 문자열을 구분 기호로 사용하고 나머지 입력 문자열을 결합합니다. 이는 Java의 조인 (CharSequence 구분자, CharSequence... 요소) 함수와 비슷하게 동작합니다.

예시
  • join("-", "aa", "bb", "cc")에서 aa-bb-cc 반환

format(expression: "format") 또는 format("format", expression)

지정된 형식의 문자열을 반환합니다. 이 함수는 expression 값으로 평가한 다음 지정된 형식으로 값을 반환합니다. 이 함수는 Java의 형식(문자열 형식, Object... args) 함수와 비슷하게 동작합니다. 지원되는 형식에 대한 자세한 내용은 Java 플랫폼, Standard Edition 7 사양의 클래스 포맷터에서의 변환을 참조하십시오. API

예시
  • format(100+1: "d")에서 문자열 101을 반환합니다.

  • format("The result is %d", 100+1)에서 문자열 The result is 101을 반환합니다.

f'expression'

연결된 문자열을 반환합니다. 이 형식이 지정된 함수를 사용하면 간단한 표현식을 사용하여 문자열을 연결하고 서식을 지정할 수 있습니다. 이러한 함수에는 중첩된 표현식이 포함될 수 있습니다. {}(중괄호)를 사용하여 표현식을 보간할 수 있습니다. 이것은 Python의 형식이 지정된 문자열 리터럴과 유사하게 동작합니다.

예시
  • f'abc{1+2: "f"}d'에서 abc3.000000d를 반환합니다. 이 예제 표현식을 평가하려면 다음을 수행하세요.

    1. format(1+2: "f")에서 부동 소수점 숫자 3.000000를 반환합니다.

    2. join('', "abc", 1+2, 'd')에서 문자열 abc3.000000d을 반환합니다.

    join('', "abc", format(1+2: "f"), 'd')와 같은 방법으로 표현식을 작성할 수도 있습니다.