정규식 테스터로 샘플 텍스트 검사하는 방법
정규식 패턴과 샘플 텍스트를 입력하고 평가를 실행하면 일치 여부를 확인할 수 있습니다. 성공한 결과에서는 전체 일치 개수와 위치, 일치한 텍스트, 캡처 그룹을 살펴볼 수 있습니다.
정규식 테스트를 시작하기 전에
정규식 테스터는 입력한 정규식 패턴을 샘플 텍스트에 적용해 일치 여부를 확인하고, 성공한 평가에서 일치 항목의 위치와 내용을 살펴보는 데 쓰입니다. 이메일 형식, 로그의 특정 부분, 반복되는 문자열처럼 규칙으로 찾을 대상을 빠르게 점검할 때 활용할 수 있습니다.
정규식 패턴과 샘플 텍스트를 검사하는 순서
- 정규식 패턴 입력란에 검사할 패턴을 입력합니다. 패턴은 비워 둘 수 있는 입력 형식이지만, 비어 있으면 평가가 실패하므로 실제로 검사할 표현식을 넣어야 합니다.
- 테스트할 샘플 텍스트를 입력합니다. 패턴을 입력한 상태에서 테스트 텍스트가 비어 있으면 평가가 실패하므로, 검사 대상 문자열을 함께 입력합니다.
- 필요한 경우 플래그를 입력합니다.
i는 대소문자를 구분하지 않는 매칭,m은 여러 줄 매칭,s는 줄바꿈을 포함하는 점 매칭,x는 확장 형식,u는 유니코드,a는 ASCII 매칭에 사용됩니다. 이 여섯 가지 이외의 문자는 매칭 모드를 활성화하지 않습니다. - 평가를 실행합니다. 패턴이 정규식으로 컴파일되지 않으면 매칭 결과 대신 평가 실패가 반환됩니다.
- 성공한 결과에서 전체 일치 개수와 각 일치 항목을 확인합니다. 결과에는 시작 위치와 끝 위치, 실제로 일치한 텍스트, 캡처 그룹이 포함되며 번호가 있는 그룹과 이름이 지정된 그룹도 표시될 수 있습니다.
결과의 의미와 확인 범위
성공한 평가에는 유효한 평가라는 상태와 전체 일치 개수가 함께 표시됩니다. 일치 개수가 0이면 입력한 패턴과 텍스트 조합에서 일치 항목을 찾지 못했다는 뜻이며, 실패와는 구분해야 합니다. 일치 항목이 있으면 시작·끝 위치로 텍스트 안의 범위를 확인하고, 일치한 텍스트와 캡처 그룹으로 패턴의 각 부분이 어떤 값을 잡았는지 검토합니다.
결과가 실패하면 먼저 패턴이 비어 있지 않은지, 패턴을 입력했다면 테스트 텍스트도 비어 있지 않은지 확인합니다. 두 입력이 채워져 있어도 패턴 문법이 컴파일되지 않으면 결과가 나오지 않습니다. 또한 플래그를 입력할 때는 i, m, s, x, u, a만 매칭 방식에 영향을 준다는 점을 염두에 둡니다.
사용 예시
주문 메모에서 연속된 숫자 문자열을 찾아 각 결과의 범위와 캡처 정보를 확인하려고 합니다.
패턴 입력란에 \d+를 입력하고 테스트 텍스트에 주문 381, 수량 2를 입력한 뒤 평가를 실행합니다. 결과에서 숫자 문자열별 일치 항목과 위치를 확인합니다.
성공한 평가라면 유효한 평가 상태와 전체 일치 개수가 표시되고, 각 일치 항목에 시작 위치·끝 위치·일치한 텍스트·캡처 그룹이 포함됩니다. 예를 들어 \d+ 패턴을 주문 381, 수량 2에 적용하면 전체 일치 개수는 2이며, 첫 번째 일치 항목은 시작 위치 3, 끝 위치 6, 일치한 텍스트 381, 두 번째 일치 항목은 시작 위치 11, 끝 위치 12, 일치한 텍스트 2로 나타납니다.
제한 사항
- 매칭 방식은 지정된 여섯 플래그에 한정되며, 컴파일할 수 없는 패턴에서는 위치나 캡처 그룹 같은 매칭 세부 정보가 제공되지 않습니다.
자주 발생하는 오류
- 패턴이나 테스트 텍스트를 입력하지 않은 채 평가하는 것이 한 가지 오류 원인입니다. 패턴을 채우고, 패턴을 제공했다면 비어 있지 않은 샘플 텍스트도 입력한 뒤 다시 평가하세요.
자주 묻는 질문
정규식 패턴을 입력하지 않아도 되나요?
패턴은 비워 둘 수 있는 입력 형식이지만, 비어 있는 패턴으로 평가하면 실패합니다. 검사할 정규식 패턴을 입력해야 합니다.
테스트 텍스트를 비워 두면 어떻게 되나요?
패턴을 입력했다면 테스트 텍스트가 비어 있을 때 평가가 실패합니다. 검사할 샘플 문자열을 함께 입력하세요.
정규식 플래그는 모두 사용할 수 있나요?
i, m, s, x, u, a만 매칭 모드를 활성화합니다. 그 밖의 플래그 문자는 매칭 방식에 영향을 주지 않습니다.