더북(TheBook)

정규식을 사용하여 이메일 형태인지 검증하기

이번에는 정규식을 사용하여 특정 문자열이 이메일 형태인지 검사하는 내용을 살펴보겠습니다. 다음 내용을 입력한 후 실행해 보세요.

이메일 형태인지 검증: RegexDemo.cs

using System;
using System.Text.RegularExpressions;

class RegexDemo
{
    static void Main()
    {
        string email = "abcd@aaa.com";
        Console.WriteLine(IsEmail(email));
    }
    static bool IsEmail(string email)
    {
        bool result = false;

        //① 이메일을 검사하는 정규식은 인터넷에서 검색하여 사용 가능
        Regex regex = new Regex(
            @"^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)" +
            @"(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$");

        result = regex.IsMatch(email); //패턴이 맞으면 true

        return result;
    }
}

실행 결과

true

에서 설명했듯이 이메일인지 확인하거나 웹 사이트, 전화번호, 사업자번호 등 특정 패턴에 대한 정규식은 인터넷에서 검색하면 많은 샘플을 얻을 수 있습니다. 정규식 자체를 만드는 것으로 접근하기보다는 닷넷 API를 사용하는 것처럼 정규식을 검색으로 찾아서 학습하면 좀 더 쉽습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.