서버에 API를 호출하기 전,
화면단에서 데이터를 분기처리해야 할 상황이 생겼다.
그동안 블로그에서 제공하는 표현식들을 복붙해서 사용했었으나
이번엔 기호들이 의미하는 바를 공부해보았고 짧게 정리해보려고 한다.
먼저, 화면에서 분기처리를 해야 할 데이터의 경우의 수는 아래와 같았다.
이번 이슈를 해결하기 위해 2가지 방법으로 생각해보았다.
1) 첫째, 모든 경우의 수를 정규식 표현으로 코드 작성
2) 둘째, 불가능 형식만 정규식 표현으로 코드 작성
첫번째 방법은 정규식 표현에 포함되는 경우 Test를 통과하고,
두번째 방법은 정규식 표현에 포함되는 경우 Test를 통과하지 못한다.
어떤 방법이 더 효율적일까?
-> 두번째 방법이라고 생각한다. 왜냐하면 불가능한 형식만 정규식 표현으로 구현하고 나머지 경우는 테스트를 불통과 시키면 되니까,
코드로 구현 시 아래와 같다
/^010([0-9]{4})([0-9]{4})$/