정규 표현식 테스트
로그프레소 쿼리 명령어(예: rex, textfile) 또는 함수(예: replace()) 중에 정규표현식과 함께 쓰이는 것들이 있습니다. 로그프레소 플랫폼은 정규표현식을 검증할 수 있는 기능을 제공합니다.
테스트 문자열에 시험 대상 문자열을 입력하고 정규표현식에 표현식을 입력하면, 테스트 문자열 중에서 정규표현식과 일치하는 문자열을 결과에 보여줍니다.
- 정규표현식
-
자바 정규표현식을 입력합니다. 다음과 같은 정규 표현식 지시자를 사용하여 정규표현식을 입력할 수 있습니다.
지시자 설명 [abc]a, b, c 중 하나의 문자 [^abc]a, b, c 를 제외한 하나의 문자 [a-z]a부터 z까지의 ASCII 소문자 중 하나 [a-zA-Z]a부터 z까지, 혹은 A부터 Z까지 ASCII 대소문자 중 하나 ^줄의 시작 부분 $줄의 끝 부분 \A문자열의 시작 부분 \z문자열의 끝 부분 .임의의 문자 \s임의의 공백 문자 \S공백 문자 이외의 문자 \d임의의 숫자 \D숫자 이외의 문자 \w글자, 숫자, 밑줄 문자 \W특수문자 \b문자 경계 (...)정규 표현식 그룹 (a|b)a 혹은 b a?0개 이상의 a a*0개 혹은 하나의 a a+0개 혹은 하나 이상의 a a{3}3개의 a a{3,}3개 이상의 a a{3,6}3개 이상 6개 이하의 a -
전체 정규표현식 명세는 다음 링크를 참고하시기 바랍니다: https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/regex/Pattern.html
- 테스트 문자열
-
정규표현식을 매칭하려는 시험 대상 문자열을 입력합니다.
- 결과
-
테스트 문자열에서 정규표현식과 일치하는 부분은 굵게 표시됩니다.
- 그룹 결과
-
정규표현식 그룹으로 인식된 값들이 표시됩니다. 정규표현식에서 이름이 부여된 그룹은 그룹 이름이 같이 표시됩니다.
- 날짜 포맷
-
날짜 지시자로 구성된 포맷을 입력합니다. 정규표현식 그룹 결과를 모두 이어붙인 문자열을 지정된 날짜 포맷으로 해석한 결과가 하단에 표시됩니다.
-
다음은 날짜 형식을 표현하는 지시자입니다.
지시자 설명 지시자가 표현하는 날짜 표기 문자열 G기원전/후 ADy연도 1996;96M월 July;Jul;07w년단위 주 27W월단위 주 2D년단위 일 189d월단위 일 10F요일 번호(1 ~ 7) 2E요일 Tuesday;Tuea오전/오후 PMH시간 (0-23) 0k시간 (1-24) 24K오전/오후 시간 (0-11) 0h오전/오후 시간 (1-12) 12m분 30s초 55S밀리초 978z시간대 (일반 표기) Pacific Standard Time;PST;GMT-08:00Z시간대 (RFC 822 표기) -0800
"도움이 필요하십니까?"를 누르면 정규 표현식 도움말과 날짜 포맷 도움말을 볼 수 있습니다.
예제
다음 예제를 통해 웹 로그에서 정규표현식을 사용해 로그 날짜를 추출하는 방법을 알아볼 수 있습니다.
-
정규표현식에 다음 문자열을 임력합니다.
\[(?<date>\d{2}/\S{3,10}/\d{4}:\d{2}:\d{2}:\d{2} \+\d{4})\] -
테스트 문자열에 다음 문자열을 입력합니다.
10.0.219.59 - - [18/May/1998:11:43:07 +0000] "GET /english/images/comp_bu_calendar_on.gif HTTP/1.0" 200 1191 -
날짜 포맷에 다음 문자열을 입력합니다.
dd/MMM/yyyy:HH:mm:ss Z -
로케일로 영어를 선택합니다.
-
이제 결과, 그룹 결과, 날짜 해석 결과에 출력되는 문자열을 확인합니다.
- 결과는 테스트 문자열에 입력한 문자열 중에서 입력한 정규 표현식과 일치하는 부분을 보여줍니다.
- 그룹 결과는 정규 표현식에 그룹 표현식(예제에서는
?<date>)이 있을 때, 그룹별로 매칭된 문자열을 보여줍니다. - 날짜 해석 결과는 정규표현식으로 매칭된 문자열을 날짜 포맷으로 지정한 규칙에 따라 파싱해 보여줍니다.

