RegEx 표현식 빌드

IBM® Cloud Logs에서 검색을 위해 데이터가 인덱싱되기 전에 RegEx 표현식을 적용하여 데이터의 구조를 제어하는 구문 분석 규칙을 사용할 수 있습니다.

IBM Cloud Logs RegEx Golang 플레이버를 사용합니다.

RegEx 패턴은 대소문자를 구분합니다.

한정자

수량자
규정자 일치
* 이전 문자 또는 시퀀스의 0개이상의 일치 항목입니다.
? 0또는 1은 이전 문자 또는 시퀀스와 일치합니다.
+ 이전 문자 또는 시퀀스와 하나 이상 일치합니다.
{N} 이전 문자의 정확히 N배와 일치합니다.
{N,} 이전 문자와 N번 이상 일치합니다.
{N,Z} N과 Z 사이에서 이전 문자와 일치합니다.

문자

문자
문자 일치
. 한 문자와 일치시킵니다.
.* 모든 항목과 일치합니다.
\d 1개의 단일 숫자와 일치합니다.
\d* N자리와 일치합니다.
\D 숫자를 제외한 모든 기호와 일치합니다.
\w 문자, 숫자 또는 밑줄과 일치합니다.
\W 문자, 숫자 또는 밑줄이 아닌 문자와 일치합니다.
\s 공백 문자와 일치합니다.
\S 공백, 탭, 줄 바꾸기 또는 캐리지 리턴을 제외한 모든 문자와 일치합니다.
\s* N개의 공백 문자와 일치합니다.
\S 공백이 아닌 문자와 일치합니다.
\S* 공백이 아닌 N 문자와 일치합니다.

앵커

앵커
앵커 일치
\b 단어 경계를 정의합니다.
^ 문자열 또는 행의 시작과 일치합니다.
$ 문자열 또는 줄의 끝을 일치시킵니다.

그룹화

그룹화
그룹화 일치
[ ] 문자 그룹을 나타냅니다.
( ) 패턴을 그룹화하는 데 사용됩니다.
[abcd...] 대괄호 안에 포함된 문자 중 1자와 일치합니다.
[a-z] a-z 범위의 1자와 일치합니다.
[^a-z] a-z 범위에 있지 않은 1자와 일치합니다.
[....]+ 대괄호 안에 나열된 문자 중 하나 이상의 문자와 일치합니다.
[....]? 대괄호 안에 나열된 1자 또는 0자와 일치합니다.
[^"]* 큰따옴표를 제외한 N 문자와 일치합니다.
[^"\s]* 큰따옴표 및 공백을 제외한 N 문자와 일치합니다.
[^.]* 0개이상의 점이 아닌 값과 일치합니다.

이름 지정된 캡처 그룹

RegEx 표현식에서 이름 지정된 캡처된 그룹을 사용하여 로그 레코드의 기존 데이터에서 새 필드를 정의할 수 있습니다.

캡처 그룹의 형식은 다음과 같습니다.

(?P<fieldName>RegularExpression)

여기서,

  • ?P 는 캡처 그룹의 시작을 나타냅니다.

  • fieldName 은 추가되는 필드의 이름으로 설정되어야 합니다.

  • RegularExpression 는 새 필드의 값을 정의하는 RegEx 를 나타냅니다.

    RegEx 는 전체 로그와 일치할 필요가 없습니다.