입력 문자열이 ID 번호 또는 여권 번호 형식인지 확인하는 PHP 정규 표현식

PHPz
풀어 주다: 2023-06-24 16:48:01
원래의
1915명이 탐색했습니다.

신분증번호와 여권번호는 사람들의 생활에 있어서 흔한 문서번호입니다. 이러한 문서 번호와 관련된 기능을 구현할 때 입력된 번호의 정확성을 확인하기 위해 형식 확인을 수행해야 하는 경우가 많습니다. PHP에서는 정규식을 사용하여 이 기능을 구현할 수 있습니다. 이 기사에서는 PHP 정규식을 사용하여 입력 문자열이 ID 번호 또는 여권 번호 형식인지 확인하는 방법을 소개합니다.

1. 신분증 번호 확인

신분증 번호는 18자리로 구성되며 마지막 숫자는 문자(코드 확인)일 수 있습니다.

처음 6자리는 지역번호입니다. 신분증이 발급되었음을 의미합니다. 증명서 장소

7~14자리는 생년월일, 7~10자리는 연도, 11~12자리는 월, 13~14자리는 숫자입니다.

15~ 17자리는 지역과 날짜에서 발급된 인증서의 일련번호를 나타내는 일련번호입니다.

마지막 숫자는 주로 처음 17자리인지 확인하는 데 사용되는 확인 코드입니다. 국가 표준을 충족합니다.

위 ID 번호의 형식에 따라 정규식을 사용하여 인증할 수 있습니다. 구체적인 구현 코드는 다음과 같습니다.

function validateIDCard($idCard) {
    $pattern = '/^d{6}(19|20)d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]d|3[0-1])d{3}[0-9X]$/';
    if (preg_match($pattern, $idCard)) {
        return true;
    } else {
        return false;
    }
}
로그인 후 복사

위 코드에서는 preg_match() 함수와 정규식을 사용하여 신분증 번호 형식을 확인합니다. $pattern 변수는 ID 번호의 형식을 확인하는 데 사용되는 정규식을 저장합니다. 여기서 d는 숫자를 나타내고, |는 or를 나타내며, [0-9X]는 마지막 숫자가 숫자 또는 대문자 X일 수 있음을 나타냅니다. 입력 문자열이 정규식의 형식, 즉 ID 번호의 형식을 준수하면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

2. 여권번호 확인

여권번호는 숫자와 문자로 구성되며, 형식은 다음과 같습니다.

1~2번째 문자는 영문으로 발급국가를 나타냅니다.

3~5번째 문자는 숫자 또는 여권 유형을 나타내는 문자

6~14번째 문자는 여권의 개인 정보를 나타내는 숫자입니다.

마지막 문자는 체크섬인 숫자 또는 문자입니다.

입력 문자열이 여권 번호 형식을 준수하는지 확인해야 할 경우 PHP 정규식을 사용할 수도 있습니다. 구체적인 구현 코드는 다음과 같습니다.

function validatePassport($passport) {
    $pattern = '/^[a-zA-Z]{2}d{3}[a-zA-Z0-9]{9}$/';
    if (preg_match($pattern, $passport)) {
        return true;
    } else {
        return false;
    }
}
로그인 후 복사

위 코드에서는 preg_match() 함수와 정규 표현식도 여권 번호 형식을 확인하는 데 사용됩니다. $pattern 변수는 여권 번호 형식을 확인하는 데 사용되는 정규식을 저장합니다. 여기서 [a-zA-Z]는 영문자를 나타내고, d는 숫자를 나타내고, [a-zA-Z0-9]는 숫자와 문자를 모두 나타냅니다. 입력 문자열이 정규식의 형식, 즉 여권 번호의 형식과 일치하면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

요약

위 코드에서 볼 수 있듯이, 주민등록번호와 여권번호의 형식을 확인하려면 PHP 정규식을 사용하는 것이 매우 편리합니다. 개발자는 애플리케이션 시나리오를 기반으로 개인화된 수정 및 최적화를 수행할 수 있으며 다양한 검증 요구 사항을 충족해야 합니다.

위 내용은 입력 문자열이 ID 번호 또는 여권 번호 형식인지 확인하는 PHP 정규 표현식의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿