PHP 정규식을 사용하여 이메일 형식을 확인하는 방법

PHPz
풀어 주다: 2023-06-24 14:12:02
원래의
1682명이 탐색했습니다.

인터넷의 발달로 이메일은 사람들의 일상생활과 업무에서 없어서는 안 될 부분이 되었습니다. 웹사이트 개발에서는 사용자가 입력한 이메일이 사양을 충족하는지 확인해야 하는 경우가 많습니다. 이 기사에서는 PHP 정규식을 사용하여 이메일 형식을 확인하는 방법을 소개합니다.

  1. 이메일 형식 규칙

이메일 형식을 확인하기 전에 먼저 이메일 형식 규칙을 이해해 봅시다. 일반적으로 법적 이메일 주소에는 다음 부분이 포함되어야 합니다.

① 사용자 이름은 일반적으로 소문자, 숫자 및 특수 문자의 조합이며 점(.) 및 대시(-)를 포함할 수 있습니다.

② @ 기호는 사용자 이름을 구분합니다.

③도메인 이름에는 com.cn, net 등과 같은 도메인 이름 접미사와 도메인 이름 접두사가 포함됩니다.

  1. PHP 정규 표현식

PHP는 정규 표현식을 사용하여 특정 규칙과 일치하는 문자열을 찾습니다. 정규식은 패턴과 태그로 구성됩니다. 패턴은 일치하는 규칙을 나타내고 태그는 패턴을 수정하는 데 사용되는 기호입니다.

예:

$pattern = '/regularexpression/';

여기서, /는 구분 기호이고 정규식은 두 구분 기호 사이에 작성됩니다. 태그에는 여러 가지 유형이 있습니다.

i: 대소문자를 구분하지 않음

m: 여러 줄 일치 패턴

g: 전역 일치 패턴

  1. PHP 확인 이메일 형식

다음은 PHP 일반을 사용한 확인 이메일 형식입니다. 표현식 코드:

$email = "example@mail.com"; // 이메일 주소 테스트
$pattern = '/^[a-z0-9]+([._-][a- z0-9]+)*@[a-z0-9]+(.[a-z]+){1,2}$/i'; // 정규 표현식

if (preg_match($pattern, $email) ) {

9b70a95e30fd4e369b607da010fcdc38

}
?>

위 코드에서는 preg_match 함수를 사용하여 이메일 주소가 사양을 충족하는지 확인합니다. 그 중 $pattern은 우리가 정의한 정규식으로 필요에 따라 수정이 가능합니다.

  1. 정규식에 대한 자세한 설명

위 정규식 $/i의 일반적인 원리는 다음과 같습니다.

/^은 문자열로 시작합니다.

[a-z0-9]+는 소문자 조합과 일치합니다. +는 최소한 한 번 일치함을 의미합니다.

(._-+)_ - 기호 뒤에 소문자 및 숫자 조합이 옵니다.는 0번 이상 일치할 수 있음을 의미합니다.

@ @ 기호와 일치합니다.

[a-z0-9]+ 소문자와 숫자의 조합과 일치합니다. +는 적어도 한 번 일치한다는 의미입니다.

(.[a-z]+){1,2} 기호 뒤에는 소문자 {가 옵니다. 1,2}는 일치 집합이 한 번 또는 두 번 반복될 수 있음을 의미합니다.

$/i는 문자열로 끝나며, 대소문자를 구분하지 않음을 의미합니다.

위의 정규 표현식은 대부분의 이메일 주소와 일치할 수 있지만 몇 가지 특별한 경우가 필요합니다. 한자 등 추가 처리.

  1. 요약

PHP 정규식을 사용하여 이메일 형식을 확인하면 사용자가 입력한 이메일이 올바른지 빠르고 정확하게 판단하고 웹사이트의 보안과 안정성을 향상시킬 수 있습니다. 동시에 정규식 규칙의 디자인은 사용 요구 사항을 충족할 수 있도록 특정 비즈니스 시나리오와 결합되어야 한다는 점에도 유의해야 합니다.

위 내용은 PHP 정규식을 사용하여 이메일 형식을 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!