정규식 테스터
실시간 매치 하이라이트와 캡처 그룹 표시로 정규식 테스트
정규 표현식
이 도구 소개
정규식 테스터는 입력한 패턴이 텍스트에 어떻게 일치하는지 실시간으로 확인하는 무료 도구입니다. 일치 부분 강조, 일치 개수, 캡처 그룹과 명명된 그룹의 추출 결과를 한눈에 볼 수 있습니다. 폼 입력 검증, 로그 추출, 문자열 치환 규칙 작성 등 정규식을 쓰고 배우는 모든 상황에서 활약합니다. 치트시트도 갖춰 메타 문자의 의미를 바로 참조할 수 있습니다.
사용 방법
- 1 패턴란에 정규식을 입력합니다.
- 2 테스트 문자열란에 검증할 텍스트를 붙여넣습니다.
- 3 일치한 부분이 강조되고 건수와 상세가 표시됩니다.
- 4 캡처 그룹과 명명된 그룹의 추출 결과를 확인합니다.
원리 설명
정규식은 문자열의 패턴을 기술하는 작은 언어입니다. 기본 메타 문자에는 다음이 있습니다. - '.'은 임의의 한 문자, '\d'는 숫자, '\w'는 영숫자와 밑줄, '\s'는 공백. - '*'는 직전을 0회 이상, '+'는 1회 이상, '?'는 0회나 1회, '{2,4}'는 2~4회 반복. - '^'은 줄 시작, '$'은 줄 끝, '[abc]'는 a나 b나 c, '(...)'는 캡처 그룹. 예를 들어 이메일 간이 검사는 '^\w+@\w+\.\w+$'처럼 쓸 수 있습니다. '*'와 '+'는 기본적으로 '탐욕적'이어서 가능한 한 길게 일치합니다. 최단 일치를 원하면 '*?'처럼 '?'를 붙입니다. 정규식의 세부 사양은 JavaScript, Python, PHP 등 플레이버마다 차이가 있으므로 사용 환경에 주의해야 합니다.
자주 묻는 질문
탐욕적 일치와 비탐욕적 일치의 차이는 무엇인가요?
탐욕적(*나 +)은 가능한 한 길게, 비탐욕적(*?나 +?)은 가능한 한 짧게 일치합니다. HTML 태그 추출 등에서 의도치 않은 범위를 잡지 않도록 구분해 씁니다.
캡처 그룹이란 무엇인가요?
괄호()로 묶은 부분을 나중에 꺼낼 수 있는 구조입니다. 날짜의 연·월·일을 따로 추출하는 등 일치의 일부를 재사용할 수 있습니다.
정규식의 플레이버란 무엇인가요?
JavaScript, Python, PCRE 등 구현마다의 방언입니다. 전방탐색이나 명명된 그룹의 표기가 다를 수 있어 실행 환경에 맞춰야 합니다.
특수 문자를 그대로 검색하려면?
'.'이나 '*'처럼 의미를 갖는 문자는 앞에 역슬래시 '\'를 붙여 이스케이프합니다. 예를 들어 진짜 마침표는 '\.'으로 씁니다.
관련 도구 및 용도
문자의 코드 값을 확인하려면 ASCII 변환, 문자열 처리 학습에는 진법 변환도 편리합니다. 수식 패턴을 다룬다면 방정식 풀이기도 활용하세요.