문서
개발자들이 꺼려하는 까칠한 규식이 형
김세윤 · 컬리 · 컬리 기술 블로그
소개
정규식(Regular Expression)과 슬랙 채널 공유로 주문서 이름에 특수 문자 입력을 막은 에피소드
AI 핵심 요약
주문자 이름에 특수 문자가 들어가면 백엔드 오류가 발생해, 처음에는 특수 문자를 나열해 제거하는 정규식을 적용했다. 하지만 목록에 포함되지 않은 문자가 다시 입력되자 접근을 바꿔 한글·영문·숫자·공백 등 허용할 문자만 남기는 방식으로 정규식을 작성했다. 한글 자모와 천지인 키보드 문자를 포함한 최종 식은 개발팀과 QA가 슬랙에서 함께 검토하며 다듬었다. 이 경험은 정규식의 범위를 꼼꼼히 살피고, 복잡한 문제를 팀과 공유해 검증하는 것이 중요하다는 점을 보여준다.
- 허용할 문자의 범위를 정의한 뒤, 그 범위 밖의 문자를 제거하면 특수 문자 목록을 일일이 나열하는 방식보다 누락을 줄일 수 있다.
- 한글 정규식에는 완성형 음절뿐 아니라 자음·모음과 천지인 키보드 입력 문자도 고려해야 한다.
- 정규식의 문자 범위와 유니코드 처리가 실제 입력 환경에서 의도대로 동작하는지 확인한다.
- 혼자 해결하기 어려운 문제는 개발팀과 QA에 공유해 함께 검토하면 놓친 사례를 발견할 수 있다.