


So verwenden Sie reguläre Python-Ausdrücke zum Extrahieren der ID-Nummer
Bei der Datenverarbeitung ist es oft notwendig, Informationen in einem bestimmten Format aus Texten zu extrahieren. Als relativ häufig vorkommende persönliche Information wird die ID-Nummer häufig bei der Datenverarbeitung verwendet. Durch die Verwendung regulärer Python-Ausdrücke kann die ID-Nummer leicht extrahiert und bestimmte Überprüfungen durchgeführt werden.
Die ID-Nummer besteht aus 18 Ziffern, einschließlich der Region, des Geburtsdatums und des Bestätigungscodes in der ID-Nummer. In Python können wir die reguläre Ausdrucksfunktion des re-Moduls verwenden, um die ID-Nummer zu extrahieren.
Zuerst müssen wir eine Textdatei mit der ID-Nummer vorbereiten. Gehen Sie davon aus, dass die Datei den Namen id_list.txt trägt und jede Zeile eine ID-Nummer enthält.
Als nächstes können wir den folgenden Code verwenden, um die Datei zu lesen und die ID-Nummer zu extrahieren:
import re # 读取文件 with open('id_list.txt', 'r') as f: content = f.read() # 使用正则表达式匹配身份证号码 pattern = r'd{18}|(d{17}(d|X|x))' id_list = re.findall(pattern, content)
Im obigen Code haben wir den regulären Ausdruck r'd{18}|(d{17} (d) verwendet |X|x))'
passend zur ID-Nummer. Dieser reguläre Ausdruck besteht aus zwei Teilen, nämlich d{18}
und d{17}(d|X|x)
. Unter diesen bedeutet d{18}
eine Übereinstimmung mit 18 Ziffern, d. h. die vollständige ID-Nummer bedeutet eine Übereinstimmung mit 17 Ziffern und Die letzte Ziffer kann aus Zahlen oder Buchstaben X/x der ID-Nummer bestehen. Indem wir die beiden Teile mit dem Symbol |
verbinden, können wir gleichzeitig die vollständige ID-Nummer und die ID-Nummer mit dem Prüfcode abgleichen. r'd{18}|(d{17}(d|X|x))'
来匹配身份证号码。该正则表达式中有两部分,分别为d{18}
和d{17}(d|X|x)
。其中,d{18}
表示匹配18位数字,即完整的身份证号码;d{17}(d|X|x)
表示匹配17位数字和最后一位可能为数字或字母X/x的身份证号码。通过使用|
符号连接两部分,我们可以同时匹配完整的身份证号码和带校验码的身份证号码。
使用re.findall
函数可以在文本中匹配所有符合正则表达式的字符串,并返回匹配结果的列表。在这里,我们将提取到的身份证号码列表保存到id_list
re.findall
, um alle Zeichenfolgen abzugleichen, die dem regulären Ausdruck im Text entsprechen, und eine Liste übereinstimmender Ergebnisse zurückzugeben. Hier speichern wir die extrahierte ID-Nummernliste in der Variablen id_list
. Als nächstes können wir die extrahierte ID-Nummer überprüfen. Die Überprüfungsregeln für Personalausweisnummern können auf einschlägige Standards verweisen, die hier kurz vorgestellt werden. Der Prüfcode ist die letzte Ziffer oder der letzte Buchstabe X/x in der ID-Nummer. Er wird durch einen bestimmten Algorithmus aus den ersten 17 Ziffern abgeleitet. Die Berechnungsmethode des Prüfcodes ist wie folgt: - Multiplizieren Sie die ersten 17 Ziffern mit den entsprechenden Gewichtskoeffizienten, um 17 Produkte zu erhalten. Dividieren Sie die Summe durch 11, um A zu erhalten Rest; Erhalten Sie den Prüfcode basierend auf dem Rest. Die spezifische Entsprechung ist wie folgt: Wenn der Rest 0 ist, ist der Prüfcode 1, wenn der Rest 2 ist , der Prüfcode ist X /x; wenn der Rest 3-10 ist, ist der Prüfcode 11 minus dem Rest.
# 校验码计算 def check_code(id_num: str) -> str: if len(id_num) == 18: factor_list = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2] check_list = list(id_num[:-1]) check_sum = sum([int(check_list[i]) * factor_list[i] for i in range(17)]) check_num = (12 - check_sum % 11) % 11 if check_num == 0: return '1' elif check_num == 1: return '0' elif check_num == 2: return 'X' else: return str(12 - check_num) else: return ''
Im obigen Code definieren wir eine Funktion namens check_code, um den Prüfcode der ID-Kartennummer zu berechnen. Der Parameter der Funktion ist die ID-Nummer und der Rückgabewert ist der Bestätigungscode.
Schließlich können wir die extrahierten ID-Nummern in der Schleife überprüfen und nur die ID-Nummern mit korrekten Verifizierungscodes behalten:
# 进行校验,并输出结果 valid_id_list = [] for id_num in id_list: # 计算校验码 code = check_code(id_num[0]) if code and code == id_num[0][-1]: valid_id_list.append(id_num[0]) print(valid_id_list)
Im obigen Code definieren wir eine leere Liste mit dem Namen valid_id_list, die zum Speichern der ID-Nummer mit korrekten Codes verwendet wird Bestätigungscode. Verwenden Sie eine Schleife, um alle extrahierten ID-Nummern zu durchlaufen und ihre Prüfcodes zu berechnen. Wenn der Prüfcode mit dem Prüfcode in der extrahierten ID-Nummer übereinstimmt, fügen Sie die ID-Nummer zu valid_id_list hinzu. Schließlich geben wir valid_id_list aus, um eine Liste von ID-Nummern mit korrekten Bestätigungscodes zu erhalten.
Im Allgemeinen können mithilfe des Re-Moduls und regulärer Ausdrücke von Python problemlos ID-Nummern aus Text extrahiert und bestimmte Überprüfungen durchgeführt werden. Dies ist sehr hilfreich bei der Verarbeitung formatierter Informationen wie z. B. ID-Nummern.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie reguläre Python-Ausdrücke zum Extrahieren der ID-Nummer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP ist hauptsächlich prozedurale Programmierung, unterstützt aber auch die objektorientierte Programmierung (OOP). Python unterstützt eine Vielzahl von Paradigmen, einschließlich OOP, funktionaler und prozeduraler Programmierung. PHP ist für die Webentwicklung geeignet, und Python eignet sich für eine Vielzahl von Anwendungen wie Datenanalyse und maschinelles Lernen.

PHP eignet sich für Webentwicklung und schnelles Prototyping, und Python eignet sich für Datenwissenschaft und maschinelles Lernen. 1.PHP wird für die dynamische Webentwicklung verwendet, mit einfacher Syntax und für schnelle Entwicklung geeignet. 2. Python hat eine kurze Syntax, ist für mehrere Felder geeignet und ein starkes Bibliotheksökosystem.

VS -Code kann unter Windows 8 ausgeführt werden, aber die Erfahrung ist möglicherweise nicht großartig. Stellen Sie zunächst sicher, dass das System auf den neuesten Patch aktualisiert wurde, und laden Sie dann das VS -Code -Installationspaket herunter, das der Systemarchitektur entspricht und sie wie aufgefordert installiert. Beachten Sie nach der Installation, dass einige Erweiterungen möglicherweise mit Windows 8 nicht kompatibel sind und nach alternativen Erweiterungen suchen oder neuere Windows -Systeme in einer virtuellen Maschine verwenden müssen. Installieren Sie die erforderlichen Erweiterungen, um zu überprüfen, ob sie ordnungsgemäß funktionieren. Obwohl VS -Code unter Windows 8 möglich ist, wird empfohlen, auf ein neueres Windows -System zu upgraden, um eine bessere Entwicklungserfahrung und Sicherheit zu erzielen.

VS -Code -Erweiterungen stellen böswillige Risiken dar, wie das Verstecken von böswilligem Code, das Ausbeutetieren von Schwachstellen und das Masturbieren als legitime Erweiterungen. Zu den Methoden zur Identifizierung böswilliger Erweiterungen gehören: Überprüfung von Verlegern, Lesen von Kommentaren, Überprüfung von Code und Installation mit Vorsicht. Zu den Sicherheitsmaßnahmen gehören auch: Sicherheitsbewusstsein, gute Gewohnheiten, regelmäßige Updates und Antivirensoftware.

VS -Code kann zum Schreiben von Python verwendet werden und bietet viele Funktionen, die es zu einem idealen Werkzeug für die Entwicklung von Python -Anwendungen machen. Sie ermöglichen es Benutzern: Installation von Python -Erweiterungen, um Funktionen wie Code -Abschluss, Syntax -Hervorhebung und Debugging zu erhalten. Verwenden Sie den Debugger, um Code Schritt für Schritt zu verfolgen, Fehler zu finden und zu beheben. Integrieren Sie Git für die Versionskontrolle. Verwenden Sie Tools für die Codeformatierung, um die Codekonsistenz aufrechtzuerhalten. Verwenden Sie das Lining -Tool, um potenzielle Probleme im Voraus zu erkennen.

Im VS -Code können Sie das Programm im Terminal in den folgenden Schritten ausführen: Erstellen Sie den Code und öffnen Sie das integrierte Terminal, um sicherzustellen, dass das Codeverzeichnis mit dem Terminal Working -Verzeichnis übereinstimmt. Wählen Sie den Befehl aus, den Befehl ausführen, gemäß der Programmiersprache (z. B. Pythons Python your_file_name.py), um zu überprüfen, ob er erfolgreich ausgeführt wird, und Fehler auflösen. Verwenden Sie den Debugger, um die Debugging -Effizienz zu verbessern.

Python eignet sich besser für Anfänger mit einer reibungslosen Lernkurve und einer kurzen Syntax. JavaScript ist für die Front-End-Entwicklung mit einer steilen Lernkurve und einer flexiblen Syntax geeignet. 1. Python-Syntax ist intuitiv und für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet. 2. JavaScript ist flexibel und in Front-End- und serverseitiger Programmierung weit verbreitet.

VS -Code ist auf Mac verfügbar. Es verfügt über leistungsstarke Erweiterungen, GIT -Integration, Terminal und Debugger und bietet auch eine Fülle von Setup -Optionen. Für besonders große Projekte oder hoch berufliche Entwicklung kann VS -Code jedoch Leistung oder funktionale Einschränkungen aufweisen.
