Nombor kad pengenalan adalah simbol pengenalan yang sering kita gunakan dalam kehidupan seharian. Apabila memproses beberapa data yang berkaitan dengan maklumat identiti, selalunya perlu mengesahkan nombor ID untuk memastikan kesahihannya. Ekspresi biasa Python ialah alat yang sangat mudah dan cekap yang boleh digunakan untuk mengesahkan nombor ID dengan cepat. Artikel ini akan memperkenalkan cara menggunakan ungkapan biasa Python untuk pengesahan nombor ID.
1. Format asas nombor ID
Sebelum kita mula menulis ungkapan biasa, kita perlu terlebih dahulu memahami format asas nombor ID. Nombor kad pengenalan pemastautin Cina terdiri daripada 18 digit, yang mana 17 digit pertama adalah kod untuk wilayah dan tarikh lahir, dan digit ke-18 ialah kod semakan. Format khusus adalah seperti berikut:
2. Gunakan ungkapan biasa Python untuk mengesahkan nombor ID
Seterusnya kami akan memperkenalkan cara menggunakan ungkapan biasa Python untuk mengesahkan nombor ID.
(1) Memperkenalkan modul semula
Apabila menggunakan Python untuk menulis dan memadankan ungkapan biasa, anda perlu memperkenalkan modul semula terlebih dahulu:
import re
(2 ) Menulis ungkapan biasa
Semasa menulis ungkapan biasa untuk nombor ID, anda perlu memberi perhatian kepada perkara berikut:
pattern = r'^[1-9]d{5}[1-9]d{3}(0[1-9]|1[0-2])(0[1-9]|[1-2]d|3[0-1])d{3}[dX]$'
Antaranya, r mewakili rentetan itu adalah rentetan asal, ^ mewakili permulaan padanan rentetan, $ mewakili penghujung rentetan padanan, [] mewakili julat padanan, d mewakili aksara angka yang sepadan, {n} mewakili padanan n aksara terkemuka, | .
(3) Gunakan modul semula untuk memadankan
Selepas menulis ungkapan biasa, kita boleh menggunakan fungsi padanan() dalam modul semula untuk memadankan sintaksnya adalah seperti berikut:
re.match(pattern, string, flags=0)
Antaranya, corak ialah ungkapan biasa, rentetan ialah rentetan yang perlu dipadankan, dan parameter bendera boleh menetapkan mod padanan (re.IGNORECASE biasanya digunakan untuk menunjukkan mengabaikan kes).
Contoh kod Python lengkap diberikan di bawah:
import re id_card = '110101198001011234' # 待验证的身份证号 pattern = r'^[1-9]d{5}[1-9]d{3}(0[1-9]|1[0-2])(0[1-9]|[1-2]d|3[0-1])d{3}[dX]$' if re.match(pattern, id_card): print('该身份证号合法!') else: print('该身份证号不合法!')
Jalankan kod di atas, hasil output ialah "Nombor ID ini adalah sah!", menunjukkan bahawa nombor ID itu mematuhi peraturan.
3. Ringkasan
Artikel ini terutamanya memperkenalkan cara menggunakan ungkapan biasa Python untuk pengesahan nombor ID. Dalam aplikasi praktikal, kami boleh melaraskan ungkapan biasa seperti yang diperlukan untuk menyesuaikan diri dengan keperluan pengesahan data yang berbeza. Pada masa yang sama, kita juga perlu memberi perhatian kepada kecekapan penulisan dan pemadanan ungkapan biasa untuk memastikan prestasi dan kestabilan program.
Atas ialah kandungan terperinci Cara menggunakan ungkapan biasa Python untuk pengesahan nombor ID. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!