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 는 전체 로그와 일치할 필요가 없습니다.