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

PHP-Methode für reguläre Ausdrücke zur Überprüfung der Gültigkeit und des Geschlechts der ID-Nummer

王林
王林Original
2023-06-24 09:36:101392Durchsuche

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:

  1. Die ersten 6 Ziffern sind die Vorwahl, die die Verwaltungsregion angibt, in der sich der Ausweisinhaber befindet.
  2. Die nächsten 8 Ziffern sind der Geburtsdatumscode, der das Geburtsdatum des Ausweisinhabers darstellt. Das Format ist eine sechsstellige Zahl, wobei die ersten beiden Ziffern das Geburtsjahr und die letzten vier Ziffern den Geburtsmonat und -tag darstellen.
  3. Die 17. Ziffer ist der Geschlechtscode, ungerade Zahlen stehen für Männer und gerade Zahlen stehen für Frauen.
  4. Die letzte Ziffer ist der Prüfcode, mit dem die Richtigkeit der ID-Nummer überprüft wird.

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn