정규식 테스트 pattern
정규식 패턴을 샘플 텍스트에 적용해 매칭 결과와 캡처 그룹을 확인합니다.
이 도구가 하는 일
정규식은 문자열에서 특정 패턴을 찾아내는 표기법입니다. 유효성 검사, 로그 파싱, 문자열 치환, 데이터 추출에 널리 쓰이지만 한 번에 정확한 패턴을 작성하기는 쉽지 않습니다. 대부분은 패턴을 조금씩 고쳐 가며 실제 데이터에 맞춰 나가는 과정을 거칩니다.
이 도구는 패턴과 대상 텍스트를 입력하면 즉시 매칭 결과를 보여줍니다. 어느 부분이 매칭되었는지, 몇 개가 발견되었는지, 캡처 그룹에 어떤 값이 담겼는지 확인할 수 있습니다. 전역 검색(g), 대소문자 무시(i), 여러 줄 처리(m) 같은 플래그도 조정할 수 있습니다.
동작 기준은 JavaScript 정규식 엔진입니다. 브라우저에서 실행되므로 입력한 패턴과 텍스트는 서버로 전송되지 않습니다.
언제 사용하나요
이메일이나 전화번호 형식 검증 패턴을 만들 때, 로그에서 특정 형식의 값을 추출할 때, 코드 편집기의 찾아 바꾸기에 넣을 패턴을 미리 검증할 때, 다른 사람이 작성한 정규식이 실제로 무엇을 매칭하는지 확인할 때 사용합니다.
입력과 출력 예시
패턴: [0-9]{3}-[0-9]{4}-[0-9]{4} / 대상: 연락처 010-1234-5678
매칭 1건: 010-1234-5678
{3} 은 앞 문자가 정확히 세 번 반복된다는 뜻입니다.
패턴: (\w+)@(\w+)\.com / 대상: a@test.com
전체: a@test.com, 그룹1: a, 그룹2: test
괄호로 묶은 부분이 캡처 그룹이 되어 값을 따로 추출할 수 있습니다.
주의사항
정규식 문법은 언어마다 조금씩 다릅니다. 이 도구는 JavaScript 기준이므로 PHP, Python, Java에서 그대로 동작하지 않는 표현이 있을 수 있습니다. 특히 lookbehind, 유니코드 속성, 이름 있는 그룹의 지원 범위가 다릅니다. 또한 중첩된 반복이 포함된 패턴은 특정 입력에서 처리 시간이 급격히 늘어나는 문제(ReDoS)를 일으킬 수 있으므로, 사용자 입력을 대상으로 하는 서버 코드에 쓸 패턴은 성능도 함께 검토해야 합니다. 이메일 검증은 완벽한 정규식을 만들기 어려우므로 간단히 검사하고 실제 인증은 메일 발송으로 확인하는 방식이 일반적입니다.
자주 묻는 질문
여기서는 되는데 서버 코드에서는 안 됩니다.
언어마다 정규식 엔진이 달라 지원하는 문법에 차이가 있습니다. 이 도구는 JavaScript 기준이므로 대상 언어의 문법을 확인하십시오.
모든 매칭이 아니라 하나만 찾아집니다.
전역(g) 플래그가 꺼져 있는 경우입니다. 플래그를 켜면 문자열 전체에서 모든 매칭을 찾습니다.