← 자료실 RESOURCE
초보자가 흔히 겪는 정규식 실수 다섯 가지와 해결법.

첫째, 점(.)을 이스케이프하지 않는 실수입니다. 점은 정규식에서 "아무 문자 하나"를 뜻하므로, 실제 마침표를 찾으려면 \. 로 써야 합니다. 예를 들어 파일 확장자 .txt 를 찾을 때 \.txt 로 쓰지 않으면 xtxt 같은 것도 잡힙니다.

둘째, 탐욕적 매칭으로 너무 많이 잡는 실수입니다. <.*> 는 첫 < 부터 마지막 > 까지 삼켜버립니다. 태그 하나씩 잡으려면 게으른 <.*?> 또는 부정 문자클래스 <[^>]*> 를 씁니다.

셋째, 앵커를 빠뜨리는 실수입니다. 전체 문자열이 형식에 맞는지 검증하려면 ^ 와 $ 로 양끝을 고정해야 합니다. 앵커가 없으면 문자열 일부만 맞아도 통과되어, 비밀번호·아이디 검증이 뚫립니다.

넷째, 대괄호 안에서 특수문자를 과하게 이스케이프합니다. 문자 클래스 [] 안에서는 대부분의 메타문자가 그냥 글자로 취급되므로 [.+*] 는 세 기호 자체를 뜻합니다. 다만 ] ^ - \ 는 위치에 주의해야 합니다.

다섯째, 플래그를 잊는 실수입니다. 모든 일치를 찾으려면 g, 대소문자를 무시하려면 i, 여러 줄에서 ^·$ 를 각 줄에 적용하려면 m 이 필요합니다. 결과가 하나만 나온다면 g 플래그부터 확인하세요.