[TIL] 정규 표현식

JIEUN YANG·2022년 8월 4일
0

서버에 API를 호출하기 전,
화면단에서 데이터를 분기처리해야 할 상황이 생겼다.

그동안 블로그에서 제공하는 표현식들을 복붙해서 사용했었으나
이번엔 기호들이 의미하는 바를 공부해보았고 짧게 정리해보려고 한다.

급하다면? <하단> '정규 표현식 기초내용' 확인

먼저, 화면에서 분기처리를 해야 할 데이터의 경우의 수는 아래와 같았다.

  • 타켓 데이터 : 전화번호
  • 불가능 형식 : '01012341234'
    불가능한 형식을 제외한 나머지, 즉 => 010-5450-1510, 010-5450, 5450-1510, 1510, 02-454-7780, 063-245-3614, 070-8890-1544 와 같은 경우에는 API를 정상 호출을 해야했다.

이번 이슈를 해결하기 위해 2가지 방법으로 생각해보았다.
1) 첫째, 모든 경우의 수를 정규식 표현으로 코드 작성
2) 둘째, 불가능 형식만 정규식 표현으로 코드 작성

첫번째 방법은 정규식 표현에 포함되는 경우 Test를 통과하고,
두번째 방법은 정규식 표현에 포함되는 경우 Test를 통과하지 못한다.

어떤 방법이 더 효율적일까?
-> 두번째 방법이라고 생각한다. 왜냐하면 불가능한 형식만 정규식 표현으로 구현하고 나머지 경우는 테스트를 불통과 시키면 되니까,
코드로 구현 시 아래와 같다

/^010([0-9]{4})([0-9]{4})$/

패턴과 의미

메서드와 의미

profile
violet's development note

0개의 댓글