정규식 테스트
정규식을 쓰고 텍스트를 붙여 넣으면 입력하는 대로 모든 일치 항목, 그룹, 치환 결과를 볼 수 있어요.
이 기기 안에서 봉인됨
브라우저에서 실행돼요. 아무것도 업로드되지 않아요.
봉인됨
치트 시트
토큰을 선택하면 정규식에 삽입돼요.
- 숫자 0–9
- 문자, 숫자, 밑줄
- 공백, 탭, 줄바꿈
- 줄바꿈을 제외한 모든 문자
- 나열한 문자 중 하나
- 나열한 문자를 제외한 모든 문자
- 텍스트(또는 줄)의 시작
- 텍스트(또는 줄)의 끝
- 단어의 경계
- 앞 항목 0개 이상
- 앞 항목 1개 이상
- 앞 항목은 있어도 되고 없어도 됨
- 앞 항목 2개 이상 4개 이하
- 캡처 그룹
- 이름 있는 캡처 그룹
- 왼쪽 또는 오른쪽
- 뒤에 …이 오는 경우(…은 포함하지 않음)
- 문자 그대로의 마침표(특수 문자는 \로 이스케이프)
텍스트 속 일치 항목
정규식 실행이 1초를 넘어 중단됐어요. (a+)+처럼 반복이 중첩된 패턴은 텍스트에 따라 실행 시간이 기하급수적으로 늘어날 수 있어요. 반복되는 부분을 더 구체적으로 바꿔 보세요.
일치 항목
- 일치
- 0
- 그룹
- 0
일치 항목과 그룹이 여기에 표시돼요.
치환
번호 그룹은 $1, $2…, 이름 있는 그룹은 $<name>, 일치 항목 전체는 $&를 쓰세요.
사용 방법
-
정규식 쓰기
패턴을 입력하고 플래그를 고르세요. 문법이 기억나지 않으면 치트 시트에서 자주 쓰는 토큰을 넣을 수 있어요.
-
텍스트 붙여 넣기
입력하는 대로 일치 항목이 강조되고, 각 항목의 위치와 캡처 그룹이 목록으로 표시돼요.
-
치환해 보기
$1이나 $<name>을 써서 바꿀 내용을 입력하면 찾아 바꾸기 결과를 미리 보고 복사할 수 있어요.
자주 묻는 질문
어떤 정규식 문법을 쓰나요?
브라우저가 실행하는 그대로의 JavaScript 정규식이에요. 이름 있는 그룹, 후방 탐색, \p{L} 같은 Unicode 속성 이스케이프도 포함돼요. 대부분의 문법은 Python, PHP, Java와 같지만 일부 기능은 달라요.
내 텍스트가 어딘가로 전송되나요?
아니요. 정규식은 브라우저 안의 별도 백그라운드 작업에서 실행돼요. 패턴과 텍스트는 내 기기 밖으로 나가지 않아요.
정규식이 왜 중단됐나요?
반복 안에 또 반복이 있는 패턴은 실패하기 전까지 수십억 가지 조합을 시도할 수 있어요. 이를 치명적 역추적(catastrophic backtracking)이라고 해요. 페이지가 멈추지 않도록 1초 넘게 걸리는 실행은 중단돼요.
g 플래그는 무엇을 바꾸나요?
g가 없으면 첫 번째 일치 항목만 찾고 첫 번째만 바꿔요. g가 있으면 텍스트의 모든 일치 항목을 찾아 바꿔요.
마침표, 괄호, 물음표를 문자 그대로 찾으려면 어떻게 하나요?
앞에 백슬래시를 붙이세요. \.는 마침표, \(는 괄호, \?는 물음표와 일치해요. 대괄호 안에서는 대부분의 문자가 이미 문자 그대로 취급돼요.