>  기사  >  백엔드 개발  >  PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)

PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)

慕斯
慕斯원래의
2021-06-10 11:48:033190검색

이전 글에서 "PHP의 정규표현식 함수에 대해 이야기해볼까요? 사용 방법(코드 포함) ", 이 기사에서는 PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 사용자 정의할 수 있는 방법을 계속해서 소개합니다.

PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)

PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까?

휴대전화 번호의 경우 중국 본토에서는 일반적으로 1로 시작하고 중간 두 자리는 3 4 5 7 8일 수 있고 두 번째 숫자가 3이면 세 번째 숫자는 0-9일 수 있다는 것을 우리 모두 알고 있습니다. , 두 번째 숫자가 4라면 세 번째 숫자는 7이 될 수 있고,

두 번째 숫자가 5라면 세 번째 숫자는 0~8이 될 수 있고, 두 번째 숫자가 7이라면 세 번째 숫자는 0~8이 될 수 있고, 만약 두 번째 숫자는 8이고 세 번째 숫자는 0-9일 수 있으며 다음 8자리는 어떤 조합으로도 조합될 수 있습니다. 휴대폰 번호를 얻으면 일반 매칭을 수행하고 ($pattre)를 입력해야 합니다. 휴대폰 번호는 정확히 일치해야 하므로 (^$)를 추가해야 합니다. 1로 시작하고 d{8}로 끝납니다. 이때 세 번째 숫자가 이면 괄호를 추가하고 수정해야 합니다. 3, 세 번째 숫자는 0-9가 될 수 있습니다. 이것이 첫 번째 경우입니다.

다음으로 필드를 입력하고 일치시킵니다.

코드 데모:

<?php
/*
            第一位1
            第二位3   4  5   7          8
            第三位0-9 7  0-8 01235678   0-9
            后八位0-9任意
*/
$phone =&#39; 12345678901 &#39; ;
$pattern = &#39;/^1(?:3[0-9])\d{8}$/S&#39;;
$result = preg_match($pattern, $phone);
echo  &#39;匹配结果为:&#39; . $result;

데모 결과는 다음과 같습니다.

PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)

데모 결과 일치 결과가 0인 것으로 나타났습니다. 분명히 일치하지 않았습니다.

입력 필드를 133으로 변경하면... 다시 실행하여 일치 결과가 1이라는 것을 알 수 있습니다. 시연 결과는 다음과 같습니다.

PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)유추하자면 0-9의 범위를 초과하지 않는 한 일치하는 결과는 1이 될 수 있습니다.

두 번째 숫자가 4이면 세 번째 숫자는 7만 있어야 합니다. 이때 코드를 47로 변경해야 합니다. 코드는 다음과 같습니다.

$phone =&#39;13345678901&#39;;

131을 141로 변경하면 일치하는 결과가 0임을 알 수 있습니다(코드는 결과를 다음과 같이 표시합니다). 다음), 두 번째 숫자가 4이면 세 번째 숫자는 7만 될 수 있다고 선언했기 때문입니다. 출력이 147이면 일치하는 결과는 1입니다. 코드는 다음과 같습니다.

$pattern = &#39;/^1(?:3[0-9]|47)\d{8}$/S&#39;;

시연 결과는 다음과 같습니다.

PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)

두 번째 숫자가 5인 경우 첫 번째 세 자리 숫자는 0~8일 수 있으며 코드는 다음과 같습니다. PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)

$phone ='14745678901';
$pattern = &#39;/^1(?:3[0-9]|47)\d{8}$/S&#39;;

시연 결과는 다음과 같습니다.

두 번째 숫자가 7이면 세 번째 숫자는 0-3.5-8입니다. PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)

$phone =&#39;15045678901&#39;;
$pattern = &#39;/^1(?:3[0-9]|47|5\d)\d{8}$/S&#39;;

시연 결과는 다음과 같습니다.

두 번째 숫자는 8이고 세 번째 숫자는 0-9일 수 있습니다. 코드는 다음과 같습니다. PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)

$phone =&#39;17045678901&#39;;
$pattern = &#39;/^1(?:3[0-9]|47|5\d|7[0-35-8])\d{8}$/S&#39;;

시연 결과는 다음과 같습니다.

추천 학습: "PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)PHP 비디오 튜토리얼

"

위 내용은 PHP에서 휴대폰 번호를 일치시키기 위해 정규식을 어떻게 사용자 정의합니까? (코드 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.