PHP 정규식 연습: ID 번호 일치
일상적인 개발에는 ID 번호가 일치해야 하는 시나리오가 많이 있습니다. ID 번호는 고정된 형식이지만 각 주마다 약간씩 다른 규칙이 있으므로 일치하려면 특정 정규 표현식이 필요합니다.
PHP는 널리 사용되는 프로그래밍 언어로, ID 카드 번호를 쉽게 일치시킬 수 있는 정규식 기능과 클래스가 내장되어 있습니다. 이 기사에서는 PHP 정규식을 사용하여 ID 카드 번호를 일치시키는 방법을 소개합니다.
- ID 카드 번호 형식
ID 카드 번호는 18자리 숫자와 체크 코드로 구성되며, 체크 코드는 숫자 또는 문자 X일 수 있습니다. 처음 17자리는 주소번호, 생년월일번호, 일련번호를 나타내며, 마지막 자리는 주민등록번호의 유효성을 확인하는 체크코드입니다.
ID번호의 형식은 다음과 같습니다.
①주소코드. 호적지의 행정구역코드를 나타내는 6자리 숫자입니다.
② 생년월일 코드. 신분증 소지자의 생년월일을 나타내는 8자리 숫자입니다.
③ 시퀀스 코드. 동일한 주소 코드 및 생년월일 코드 하에서 고유함을 나타내는 3자리 숫자입니다.
4 인증코드입니다. ID 번호의 유효성을 확인하는 데 사용되는 숫자 또는 문자 1개입니다.
도마다 행정 구역 코드가 다르기 때문에 신분증 번호를 일치시키려면 다른 정규식이 필요합니다. ID 번호와 일치하는 정규식을 작성하는 방법을 살펴보겠습니다.
- 주소코드 매칭
주소코드는 주민등록번호 앞 6자리로, 거주지의 행정구역 코드를 나타내는 데 사용됩니다. 각 도의 행정 구역 코드가 다르기 때문에 주소 코드에 맞게 서로 다른 정규식을 작성해야 합니다.
베이징을 예로 들면 베이징의 주소 코드는 110000입니다. 정규식은 다음과 같습니다.
$pattern = '/^110000/';
그 중 ^는 일치하는 문자열의 시작을 나타내고 110000은 일치해야 하는 주소 코드를 나타냅니다.
다른 지방의 정규 표현은 행정 구역 코드에 따라 적절히 수정될 수 있습니다.
- 생년월일 매칭
생년월일 코드는 신분증 번호 7~14자리로 신분증 소지자의 생년월일을 나타내는 데 사용됩니다. 생년월일 코드의 형식은 yyyyMMdd이며, 여기서 yyyy는 생년월일을, MM은 생년월일을, dd는 생년월일을 나타냅니다.
생년월일 코드의 정규식은 다음과 같습니다.
$pattern = '/^[1-9]d{5}(19|20)d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])d{3}[0-9Xx]$/';
여기서 [1-9]d{5}는 주소 코드의 처음 6자리를 나타내고, (19|20)d{2}는 연도를 나타냅니다. 1900년부터 2099년까지 출생, (0[1-9]|1[012])는 생일이 01부터 12월까지임을 의미하고, (0[1-9]|12|3[01])은 생일이 1900년부터 12월까지임을 의미합니다. 01 ~ 31, d{3}는 시퀀스 코드를 나타내고, [0-9Xx]는 검사 코드를 나타냅니다(숫자 또는 문자 X일 수 있음).
- 완전한 정규식
주소 코드와 생년월일 코드의 정규식을 결합하면 신분증 번호에 대한 완전한 일치 규칙을 얻을 수 있습니다.
$pattern = '/^110000(19|20)d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])d{3}[0-9Xx]$/';
이 정규식은 신분증 번호와 일치할 수 있습니다. 베이징의 경우, 다른 지방의 정규 표현은 해당 행정 구역 코드에 따라 수정될 수 있습니다.
- PHP 정규식을 사용하여 ID 번호 일치
PHP에서는 preg_match 함수를 사용하여 ID 번호를 일치시킬 수 있습니다. 예는 다음과 같습니다.
$id_number = '110101199001010013'; // 待匹配的身份证号码 $pattern = '/^110000(19|20)d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])d{3}[0-9Xx]$/'; // 匹配规则 if (preg_match($pattern, $id_number)) { echo '身份证号码格式正确'; } else { echo '身份证号码格式错误'; }
이 코드에서 $id_number는 일치해야 하는 ID 번호이고 $pattern은 일치 규칙입니다. ID 번호가 일치 규칙을 충족하면 출력 형식이 올바른 것입니다. 그렇지 않으면 출력 형식이 올바르지 않습니다.
- 요약
PHP 정규식을 사용하면 ID 카드 번호를 쉽게 일치시킬 수 있습니다. 각 성의 행정 구역 코드에 따라 해당 정규식을 작성하여 주소 코드와 일치시킨 다음, 주소 코드와 생년월일 코드를 결합하여 전체 ID 카드 번호를 일치시켜야 합니다. 실제 애플리케이션에서는 쉽게 재사용할 수 있도록 ID 번호 일치 코드를 함수로 캡슐화할 수 있습니다.
위 내용은 PHP 정규식 연습: ID 번호 일치의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

CakePHP에 로그인하는 것은 매우 쉬운 작업입니다. 한 가지 기능만 사용하면 됩니다. cronjob과 같은 백그라운드 프로세스에 대해 오류, 예외, 사용자 활동, 사용자가 취한 조치를 기록할 수 있습니다. CakePHP에 데이터를 기록하는 것은 쉽습니다. log() 함수는 다음과 같습니다.

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

CakePHP는 오픈 소스 MVC 프레임워크입니다. 이를 통해 애플리케이션 개발, 배포 및 유지 관리가 훨씬 쉬워집니다. CakePHP에는 가장 일반적인 작업의 과부하를 줄이기 위한 여러 라이브러리가 있습니다.
