본문 바로가기

프로그램 강좌

정규표현식 이메일 형식에 맞게 설정하는 방법

코딩 하다보면 매번 정규표현식이 자주 쓰이는데, 할때마다 옮겨적기도 불편하네요.
이번 기회에 문법을 파헤쳐 볼까 합니다.

"이메일 형식에 맞지 않습니다.'

웹페이지 보다보면 이런 메시지 출력되는것 많이 보셨죠?
이 조건을 입력하려면 이런 정규표현식을 작성해야 합니다.

    ***
      /\S+@\S+\.\S+/
    ***

이게 뭔 외계인 소리인가 하실겁니다.

해석

하나하나씩 살펴보면 전부 이해가 갈겁니다.
아래 이미지를 보시면 맨 첫번째 항목이 정답이고 나머지 형식은 모두 틀린겁니다. 
이제부터 나머지들을 거를겁니다.

\S 는 공백을 제외한 모든 문자를 뜻합니다. +를 붙인다면 앞에 조건을 가진 모든 단어라고 생각하면 되겠죠.

@를 붙였더니 딱 골뱅이 기호까지 선택되네요. 우리는 뒤까지 더 선택해야합니다.

골뱅이 다음 공백을 제외한 모든 문자를 선택했습니다. 첫번째꺼는 잘 선택되는데 아직 네번째거를 거르지 못했네요.

아까 @와 마찬가지로 이메일 형식에서 빠질 수 없는 점도 추가해보겠습니다. 
@처럼 .을 추가하면 안됩니다. '.'은 다른 표현이 지정되어 있습니다. 
그럼에도 추가할 방법은 없을까요?

\. 을 붙여주면 됩니다. 이제 점까지 선택 되었고, 나머지 문자는 \S+ 로 포함시켜 주면 됩니다. 
다른 포스팅에서 또 뵙겠습니다.

728x90