정규식 테스터
아래에 정규표현식과 테스트 문자열을 입력하세요. 매치가 실시간으로 강조됩니다. JavaScript regex 플래그를 지원합니다. 모든 처리는 브라우저에서 로컬로 수행됩니다.
| # | 위치 | 일치 | 그룹 |
|---|
정규식 플래그
| 플래그 | 설명 |
|---|---|
g | 전역 - 첫 번째뿐만 아니라 모든 매치를 찾습니다 |
i | 대소문자 구분 없는 매칭 |
m | 여러 줄 - ^와 $가 줄 경계와 일치합니다 |
s | Dotall - .가 줄바꿈과 일치합니다 |
u | 유니코드 - 전체 유니코드 매칭 활성화 |
y | 직전 일치가 끝난 위치에서만 일치합니다 |
일치 항목은 시작 위치와 잡아낸 모든 그룹, 이름 있는 그룹까지 함께 나열됩니다. 실제로 확인하려는 것이 대개 그것이기 때문입니다. 바꾸기 모드는 같은 패턴을 표준 치환 문법으로 돌리므로 $1과 $
또 데이터를 손으로 손보고 있나요
매번 브라우저 탭에서 고쳐야 하는 페이로드는 원래 코드가 할 일입니다. 저희는 시스템 사이에서 데이터를 옮기는 연동, 파서, 서비스를 만들고, 그 과정에서 조용히 데이터를 망가뜨리는 것들을 고칩니다.
무엇을 옮기는지 알려주세요자주 묻는 질문
패턴이 왜 첫 번째 일치만 찾나요
g 플래그가 꺼져 있기 때문입니다. 그것이 없으면 정규식은 설계상 첫 일치에서 멈춥니다. 유효성 검사에서는 그편이 맞고, 문서를 훑을 때는 아닙니다. 켜면 모든 일치가 나열됩니다.
이름 있는 그룹을 지원하나요
네. 번호 그룹과 이름 그룹 모두 일치마다 표에 나옵니다. (?
바꾸기 모드는 $1을 어떻게 다루나요
여러분의 코드와 똑같이 다룹니다. 패턴과 치환 문자열을 언어 자체의 치환 함수에 넘기기 때문입니다. 그래서 $1과 $
왜 일치 나열을 도중에 멈췄나요
상한이 있습니다. 모든 위치에서 일치하는 패턴은 글자마다 한 행을 만들고, 그 표는 쓸모 있어지기 훨씬 전에 쓸 수 없게 되기 때문입니다. 이 상한에 부딪혔다면 대개 패턴이 의도보다 넓습니다.
패턴 때문에 페이지가 멈춥니다. 왜 그런가요
어떤 패턴은 파국적으로 되짚어 갑니다. (a+)+ 같은 중첩 수량자는 거의 일치하는 문자열에서 지수 시간이 걸릴 수 있습니다. 이는 이 페이지가 아니라 패턴의 성질이며, 알아 둘 값어치가 있습니다. 같은 패턴은 여러분 서버에서도 똑같이 굴 테니까요.