이메일 정규식 예제

다음은 전자 메일 주소의 형식을 확인하는 네 가지 정규식(예식이라고도 함)입니다. 그들은 복잡성의 정도를 증가있다. 더 복잡할수록 각각 이메일 주소만 일치할 수록 더 정확해집니다. 이전 단락은 다음의 모든 예제에도 적용됩니다. 단어 경계를 문자열 시작/문자열 끝 앵커로 변경하거나 그 반대로 변경해야 할 수 있습니다. 그리고 대/소문자를 구분하지 않는 일치 옵션을 켜야 합니다. 사용자가 유효한 이메일 주소를 입력했는지 어떻게 확인할 수 있습니까? 사인을 확인합니까, 아니면 더 복잡합니까? 많은 개발자에게 대답은 정규식, 와일드 카드 및 기타 특수 문자를 사용하여 텍스트 패턴을 설명 할 수있는 코드의 비트입니다. 이 주제를 새로 접하는 경우, 우리는 훌륭한 정규식 튜토리얼을 가지고 있습니다. 이메일 주소는 john@server.department.company.com 하위 도메인의 서버에 있을 수 있습니다.

@ 기호 다음문자 클래스에 점을 포함했기 때문에 위의 모든 정규식은 이 전자 메일 주소와 일치합니다. 그러나 위의 정규식은 john@aol과 일치합니다… 연속된 점으로 인해 유효하지 않습니다. [A-Z0-9.-]+를 대체하여 이러한 일치 항목을 제외할 수 있습니다. (?:[A-Z0-9-]+.) + 위의 정규식 중 어느 한 개에서. 문자 클래스에서 점을 제거하고 대신 문자 클래스와 다음 리터럴 점을 반복했습니다. 예: ^[A-Z0-9._%+-++]++++++[[A-Z0-9-]+.) +[A-Z]{2,}$는 john@server.department.company.com 일치하지만 john@aol은 일치하지 않습니다… Com.

이 레시피에서는 정규식을 단계별로 작성하는 방법을 보여 줍니다. 이 기술은 RegexBuddy와 같은 대화형 정규식 테스터에서 특히 유용합니다. Cal Henderson (플리커)는 PHP에서 이메일 주소 분석이라는 기사를 작성하고 적절한 RFC (2)822 준수 이메일 주소 구문 분석하는 방법을 보여줍니다. 또한 php, 파이썬 및 루비로 소스 코드를 얻을 수 있습니다. 간단하죠? 이메일 주소에는 @ 기호가 있어야 합니다. 이것은 종종 내가 가장 많이하는 일이며, 등록 양식의 이메일 주소에 대한 확인 필드와 결합하면 사용자 오류와 같은 대부분의 문제를 완화 할 수 있습니다. 그러나 정규 표현식에 전혀 의존하지 않고 전자 메일이 유효한지 여부를 확인할 수있는 방법이 있다고 말한다면 어떨까요? 그것은 놀라 울 정도로 쉽게, 그리고 당신은 아마 이미 어쨌든 그것을 하고 있어. 아니, 난 농담이 아니에요.

사용자에게 이메일을 보내기만 하면 됩니다. 정품 인증 전자 메일은 수년 동안 사용되어 왔지만 전자 메일의 형식이 올바르게 지정되는 복잡한 유효성 검사와 결합되는 경우가 많습니다. 사용자에게 활성화 이메일을 보내려면 거대한 정규식을 사용하는 것이 왜 방해가 되는가? 유효성을 검사하려는 전자 메일 주소는 System.Net.Mail 네임스페이스를 사용하여 ASP.NET 웹 응용 프로그램에서 사용자 목록에 이메일을 보내는 데 사용됩니다. 따라서 매우 복잡한 정규식을 사용하는 대신 주소에서 MailAddress 인스턴스를 만들려고합니다. 주소가 제대로 형성되지 않은 경우 MailAddress 구성 검색기는 예외를 throw합니다. 이런 식으로, 나는 적어도 문 밖으로 이메일을 얻을 수 있습니다 알고있다. 물론 이것은 서버 측 유효성 검사이지만 최소한 어쨌든 필요합니다. 정규식 라이브러리에서 사용되는 경우 주석을 포함한 전자 메일 주소 유효성 검사와 같은 코드를 사용하여 호출할 수 있습니다.

또는 정규 표현식의 유효성을 검사하는 전자 메일 주소 비교. @ 문자와 함께 도메인 이름은 IdnMapping 클래스를 사용하여 미국-ASCII 문자 범위를 벗어난 유니코드 문자를 Punycode로 변환하는 DomainMapper 메서드로 전달됩니다. 또한 IdnMapping.GetAscii 메서드가 도메인 이름에 있는 잘못된 문자를 검색하는 경우 잘못된 플래그를 True로 설정합니다. 메서드는 @기호 앞에 오는 Punycode 도메인 이름을 IsValidEmail 메서드에 반환합니다. 예쉬. 정말 복잡한 것이 필요합니까? 위에서 링크한 Google 쿼리를 실제로 확인하면 사람들이 수년 동안 이메일 주소를 구문 분석하기 위해 RFC 호환 정규식을 작성(또는 작성하려고) 했습니다.

Dieser Eintrag wurde veröffentlicht in Allgemein. Lesezeichen auf den Permanentlink.