Regex Tester
Test regular expressions
Test regular expressions 브라우저에서 로컬로 실행됩니다.
About the
Regex Tester는 자신의 샘플 텍스트에 대해 JavaScript 정규식을 실행하고 입력할 때 모든 일치 항목을 강조 표시하므로 추측하는 대신 패턴의 성공 또는 실패를 확인할 수 있습니다. 하이라이트와 함께 각 일치 항목을 시작 위치 및 캡처 그룹과 함께 나열합니다. 이는 그룹 2가 원하는 값인지 빈 문자열인지 실제로 알려주는 부분입니다. 세 가지 실수로 인해 대부분의 정규 표현식이 손상되고 세 가지 모두 여기에 표시됩니다. 의도한 것보다 더 많은 텍스트를 조용히 삼키는 탐욕스러운 수량자, 무엇이든 일치하는 이스케이프되지 않은 점, 첫 번째 적중 후 검색을 중지하는 누락된 전역 플래그입니다.
Where people use the
- 소수의 실제 로그 라인에 대해 로그 구문 분석 패턴을 디버깅합니다.
- 양식에 연결하기 전에 전화번호 또는 우편번호 규칙을 알아보세요.
- 붙여넣은 텍스트 블록에서 주문 번호 또는 ID를 추출합니다.
- 한 문자를 변경하고 하이라이트가 움직이는 것을 관찰하여 수량자가 어떻게 작동하는지 학습합니다.
How to use the
- 1
테스트하려는 텍스트를 붙여넣으세요.
고안된 샘플이 아닌 실제 샘플을 사용하십시오. 실제 데이터의 극단적인 경우가 패턴을 깨뜨리므로 일치하지 않아야 하는 라인도 포함하세요.
- 2
패턴 쓰기
슬래시 없이 표현식을 입력합니다(예: /[a-z]+/ 대신 [a-z]+). 플래그는 별도의 토글입니다.
- 3
플래그 켜기 또는 끄기
g는 첫 번째에서 멈추지 않고 모든 일치 항목을 찾고, i는 대소문자를 무시하고, m은 행당 앵커가 작동하도록 하고, s는 점이 줄 바꿈을 확장하도록 하고, u는 전체 유니코드 모드를 활성화하고 y 앵커는 lastIndex와 일치합니다.
- 4
매치 테이블 읽기
각 결과에는 일치하는 텍스트, 해당 문자 오프셋 및 모든 캡처 그룹이 표시됩니다. 예상치 못한 빈 그룹은 일반적으로 선택적 수량자가 일치하지 않음을 의미합니다.
- 5
완성된 패턴을 복사하세요
하이라이트가 올바르게 보이면 표현식을 복사하여 코드에 붙여넣고 플래그도 함께 전달해야 합니다.
팁 및 모범 사례
- 패턴당 하나의 규칙을 테스트합니다. 세 가지 작업을 수행하는 정규식은 읽을 수 없고 디버깅도 불가능합니다.
- 일치하지 않아야 하는 줄을 포함하고 강조 표시되지 않은 상태로 유지되는지 확인하세요.
- 번호가 매겨진 그룹보다 연도, 월, 일과 같은 이름이 지정된 그룹을 선호하므로 다음 달에 다시 돌아올 때 패턴이 여전히 의미가 있습니다.
자주 묻는 질문
이것은 어떤 정규식 맛을 사용합니까?
브라우저의 자체 RegExp 엔진을 통한 JavaScript. 구문은 PCRE 및 Python의 re 모듈과 유사하지만 동일하지는 않습니다. 명명된 그룹, 미리보기, 뒤돌아보기 및 유니코드 속성은 현재 브라우저에서 모든 작업을 이스케이프합니다.
내 패턴이 예상보다 훨씬 더 많은 텍스트와 일치하는 이유는 무엇입니까?
수량자는 기본적으로 탐욕적이기 때문입니다. .* 또는 [0-9]+와 같은 것은 패턴의 나머지 부분이 일치하도록 허용하면서 최대한 많이 소비합니다. 게으르게 하려면 물음표를 추가하면 .*? 아니면 [0-9]+? 첫 번째 기회에 멈춥니다.
왜 결과가 하나만 나오나요?
전역 플래그가 꺼져 있습니다. g가 없으면 엔진은 첫 번째 일치 항목을 반환하고 중지됩니다. g를 전환하여 입력에서 모든 일치 항목을 수집합니다.
내 앵커가 두 번째 줄에서 작동하지 않는 이유는 무엇입니까?
기본적으로 캐럿 및 달러 앵커는 각 줄이 아닌 전체 문자열의 시작과 끝을 나타냅니다. 라인을 인식하도록 하려면 m 플래그를 활성화하십시오.
내 테스트 데이터가 어디로든 전송되나요?
아니요. 내장된 RegExp 개체를 사용하여 브라우저에서 일치가 발생합니다. 아무 것도 업로드되지 않으므로 실제 로그 줄이나 구성 조각을 안전하게 붙여넣을 수 있습니다.
이를 사용하여 양식에 입력된 내용을 확인할 수 있나요?
여기에서 패턴을 개발할 수 있지만 항상 서버에서 다시 검증하세요. 클라이언트측 정규식은 완전히 건너뛸 수 있기 때문에 보안 제어가 아닌 사용자 편의를 위한 것입니다.