Heim >Backend-Entwicklung >PHP-Tutorial >PHP-Methode für reguläre Ausdrücke zur Überprüfung der Gültigkeit und des Geschlechts der ID-Nummer
Die Personalausweisnummer ist in unserem Land ein wichtiges Symbol zur Identifizierung von Einwohnern. Sie kann bei vielen Gelegenheiten zur Identitätsprüfung verwendet werden. Um die Gültigkeit und Richtigkeit der ID-Nummer im Antrag sicherzustellen, muss diese durch reguläre Ausdrücke überprüft werden. In diesem Artikel wird erläutert, wie Sie mithilfe regulärer PHP-Ausdrücke die Gültigkeit und das Geschlecht der ID-Nummer überprüfen.
1. Die Zusammensetzung und Regeln der ID-Nummer
Die ID-Nummer besteht aus 18 Ziffern oder 17 Ziffern plus 1 Prüfcode. Dabei stellen die ersten 17 Ziffern die Informationen des Ausweisinhabers dar und die letzte Ziffer stellt den Verifizierungscode dar, der zur Überprüfung der Richtigkeit der Ausweisnummer verwendet wird.
Die Regeln für Ausweisnummern lauten wie folgt:
2. Verwenden Sie reguläre Ausdrücke, um die ID-Nummer zu überprüfen.
Mit regulären Ausdrücken können Sie die Gültigkeit der ID-Nummer leicht überprüfen. Das Folgende ist ein einfaches Beispiel für einen regulären Ausdruck:
$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]$/'; $code = '110101199001011234'; if (preg_match($pattern, $code)) { echo '身份证号码有效'; } else { echo '身份证号码无效'; }
Die Regeln dieses regulären Ausdrucks entsprechen den Regeln für Ausweisnummern und es werden einige Qualifikationsmerkmale und Zeichenklassen verwendet. Dabei repräsentiert ^ den Anfang der Zeichenfolge und $ das Ende der Zeichenfolge. [1-9] bedeutet, dass die erste Ziffer nicht 0 sein darf, und d{5} bedeutet, dass die nächsten 5 Ziffern Zahlen sind. (19|20) gibt an, dass das Geburtsjahr des Ausweisinhabers eine Zahl ist, die mit 19 oder 20 beginnt. (0[1-9]|1[012]) stellt die Nummer des Geburtsmonats 01-12 dar. (0[1-9]|12|3[01]) stellt eine Zahl dar, deren Geburtsdatum der 31.01. ist. d{3} bedeutet, dass die letzten drei Ziffern eine beliebige Zahl sein können, [0-9Xx] bedeutet, dass die letzte Ziffer eine Zahl oder ein Buchstabe X ist. Mit diesem regulären Ausdruck können Sie die Gültigkeit der ID-Nummer leicht überprüfen.
3. Verwenden Sie reguläre Ausdrücke, um das Geschlecht der ID-Nummer zu überprüfen.
Die 17. Ziffer der ID-Nummer stellt das Geschlecht des ID-Karteninhabers dar, ungerade Zahlen stehen für männlich und gerade Zahlen für weiblich. Mithilfe regulärer Ausdrücke können Sie ganz einfach die 17. Ziffer der ID-Nummer extrahieren und deren Geschlecht bestimmen.
Das Folgende ist ein einfaches Beispiel:
$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]$/'; $code = '110101199001011234'; if (preg_match($pattern, $code, $matches)) { $sex = $matches[6] % 2 == 0 ? '女' : '男'; echo '性别为' . $sex; } else { echo '身份证号码无效'; }
Dieser reguläre Ausdruck ist derselbe wie der vorherige, außer dass es eine zusätzliche Erfassungsgruppe (d{3}) gibt, die zum Erfassen der 17. Ziffer der ID-Nummer verwendet wird . Verwenden Sie die Variable $matches, um die erfassten Informationen abzurufen und das Geschlecht anhand der Parität der 17. Position zu bestimmen.
Zusammenfassend lässt sich sagen, dass Sie durch die Verwendung einfacher regulärer Ausdrücke leicht die Gültigkeit der ID-Nummer überprüfen und Geschlechtsinformationen extrahieren können. Wenn in praktischen Anwendungen strengere und detailliertere Verifizierungsregeln erforderlich sind, können diese entsprechend den tatsächlichen Anforderungen angepasst und verbessert werden.
Das obige ist der detaillierte Inhalt vonPHP-Methode für reguläre Ausdrücke zur Überprüfung der Gültigkeit und des Geschlechts der ID-Nummer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!