스택큐힙리스트

이메일 주소를 유효성 검사하는 C# 코드 본문

카테고리 없음

이메일 주소를 유효성 검사하는 C# 코드

스택큐힙리스트 2023. 9. 6. 13:04
반응형

가장 우아한 코드는 문자열이 유효한 이메일 주소인지 확인하는 것입니다?

답변 1

어떠신가요?

'bool IsValidEmail(string email)

{

var trimmedEmail = email.Trim();

if (trimmedEmail.EndsWith(.)) {

return false; // suggested by @TK-421

}

try {

var addr = new System.Net.Mail.MailAddress(email);

return addr.Address == trimmedEmail;

}

catch {

return false;

}

}

'

당신은 컴퓨터 전문가입니다. 스튜어트의 의견에 따라, 최종 주소를 원래 문자열과 비교하여 항상 true를 반환하는 대신 비교합니다. MailAddress는 공백이 포함된 문자열을 표시 이름과 주소 부분으로 구문 분석하기 때문에 원래 버전은 잘못된 양성 결과를 반환했습니다.

이해를 돕기 위해, 이 질문은 특정 문자열이 올바른 이메일 주소인지 여부를 묻는 것이며, 메시지를 보낼 유효한 대상 이메일 주소인지 여부는 확인하기 위해 메시지를 보내는 것이 유일한 실질적인 방법입니다.

이메일 주소는 처음에 생각하는 것보다 더 유연합니다. 다음은 모두 완벽하고 유효한 형식입니다:

코그@휠

오렌지 톱니바퀴@example.com

123@$.xyz

대부분의 사용 사례에서 잘못된 유효하지 않음은 사용자 및 향후 확장 관점에서 잘못된 유효함보다 훨씬 나쁩니다. 이 질문에 대한 한 가지 해결책은 아래와 같습니다 (이 답변은 현재 삭제되었습니다). 이에는 더 많은 세부 정보와 문제 해결을 위한 몇 가지 아이디어가 포함되어 있습니다.

사용자 경험을 위해서 여전히 정상성 검사를 제공하는 것은 좋은 생각입니다. 이메일 주소가 유효한 것으로 가정하고, 알려진 최상위 도메인을 확인하고, 도메인에 MX 레코드가 있는지 확인하며, 일반적인 도메인 이름의 맞춤법 오류를 확인할 수 있습니다(gmail.cmo 등). 그런 다음 사용자에게 예, 제 메일 서버는 정말로 🌮🍳🎁을(를) 이메일 주소로 허용합니다라고 말할 기회를 제공하는 경고를 제시합니다.

비즈니스 로직에 예외 처리를 사용하는 것에 대해서는 피하는 것이 좋다는 점에 동의합니다. 하지만, 이는 편의와 명확성이 교리를 앞설 수 있는 경우 중 하나입니다.

또한, 이메일 주소를 다른 목적으로 사용한다면 대부분 MailAddress로 변환하는 작업이 필요할 것입니다. 이 정확한 함수를 사용하지 않더라도 동일한 패턴을 사용하고 싶을 것입니다. 또한 null, 빈 값 또는 유효하지 않은 형식인지 여부를 확인하여 특정 실패 종류를 확인할 수도 있습니다. 'different exceptions'의 계속적인 검출을 통해.

--- 추가 읽기 ---

'Documentation for System.Net.Mail.MailAddress'

'Explanation of what makes up a valid email address'

답변 2

SEO-conscious Korean Essay:

이메일 주소 유효성 검사에 대한 C# 코드

이메일 주소는 현대 사회에서 매우 중요한 통신 도구이며, 비즈니스 및 개인적인 목적으로 많은 사람들이 사용하고 있습니다. 이메일 주소 유효성을 검사하는 것은 사용자가 올바른 형식의 이메일을 입력했는지 확인하는 중요한 단계입니다. 이번에는 C# 언어를 사용하여 이메일 주소의 유효성을 검사하는 코드를 작성해 보겠습니다.

이메일 주소가 올바른 형식으로 입력되었는지 확인하기 위해 정규 표현식을 사용할 수 있습니다. 아래의 C# 코드는 이메일 주소 유효성을 검사하기 위해 정규 표현식을 활용합니다.

```

using System;

using System.Text.RegularExpressions;

public class EmailValidation

{

public static bool ValidateEmail(string email)

{

string pattern = @^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$;

Regex regex = new Regex(pattern);

return regex.IsMatch(email);

}

public static void Main(string[] args)

{

string email = example@example.com;

bool isValid = ValidateEmail(email);

if (isValid)

{

Console.WriteLine(올바른 이메일 주소입니다.);

}

else

{

Console.WriteLine(유효하지 않은 이메일 주소입니다.);

}

}

}

```

이 코드의 주요 부분은 `ValidateEmail` 메서드입니다. 이 메서드는 입력된 이메일 주소가 주어진 정규 표현식 패턴과 일치하는지를 확인합니다. 입력된 이메일 주소가 정규 표현식과 일치하는 경우 `true`를 반환하고, 그렇지 않은 경우 `false`를 반환합니다.

이 코드의 예제에서는 `example@example.com`이라는 올바른 형식의 이메일 주소가 입력되었는지 확인합니다. 이메일 주소가 올바른 형식으로 입력되었으면 올바른 이메일 주소입니다.라는 문구가 출력되고, 그렇지 않은 경우 유효하지 않은 이메일 주소입니다.라는 문구가 출력됩니다.

이메일 주소 유효성을 검사하는 것은 사용자가 올바른 형식으로 이메일 주소를 입력하는 것을 돕기 위해 매우 중요합니다. 올바른 형식의 이메일 주소를 입력하는 것은 향후 통신 및 업무에 큰 도움이 될 것입니다. 이러한 이유로 이메일 주소 유효성을 확인하는 C# 코드를 작성하여 개발 과정에서 이용할 수 있습니다.

반응형
Comments