Manipulation regulärer Ausdrücke durch Python

Einführung

Ich vergesse oft die Operation, wenn ich reguläre Ausdrücke in Python verarbeiten möchte. Notieren Sie sich also, wonach Sie häufig suchen. Ich werde es hinzufügen, wenn die Anzahl der häufig gesuchten Artikel zunimmt. Wenn Sie die umfassenden Informationen anzeigen möchten, gehen Sie zu Offizielle Dokumente. Vergessen Sie nicht, re zu importieren. Als Referenz habe ich unter hier einen Hinweis zur Grammatik regulärer Ausdrücke hinterlassen.

Überblick

Eine Zusammenfassung der eingeführten Funktionen. Hier repräsentiert das Muster ein beliebiges Objekt mit regulären Ausdrücken und die Übereinstimmung ein beliebiges Übereinstimmungsobjekt.

Funktion Inhalt
re.compile(r"Reguläre Ausdrücke") Reguläre Ausdrückeオブジェクトの生成
pattern.search(String) String内でpatternに一致した最初のマッチオブジェクト
pattern.finditer(String) String内でpatternに一致した全てのマッチオブジェクトのイテレータ
match.start( ) Startindex in der Suchergebniszeichenfolge
match.end( ) Index in der Suchergebniszeichenfolge beenden
match[0] Suchergebniszeichenfolge

Suche nach Zeichenkette (1)

Wenn Sie beispielsweise wissen möchten, ob die Zeichenfolge "Ich bin ein Python-Anfänger A" "obere Buchstaben" enthält.

search_exam_1.py


import re
string = "Ich bin Python-Anfänger A." #Definition der Zeichenfolge
pattern = re.compile(r"[A-Z]") #Definition des Musters für reguläre Ausdrücke
result = pattern.search(string) #Suche

print(result)
print(result.start())
print(result.end())
<re.Match object; span=(2, 3), match='P'>
2
3

Wenn Sie einen regulären Ausdruck verwenden, müssen Sie ihn so verarbeiten, dass er als regulärer Ausdruck erkannt wird. Der Prozess ist "re.compile ()". Wenn Sie "re.search (r" [A-Z] ", Zeichenfolge)" verwenden, um die 3. und 4. Zeile zusammenzusetzen, wird jedes Mal, wenn mehrere Texte vorhanden sind, ein Objekt mit regulären Ausdrücken erstellt. Wenn der reguläre Ausdruck ein \ (Kreissymbol) enthält, muss die Zeichenfolge mit "r" "" eingeschlossen werden, damit sie korrekt erkannt wird. Dann erkennt Python, dass die Zeichenfolge darin roh ist. Weitere Informationen finden Sie am Anfang von Offizielles Dokument.

Das an result zurückgegebene Objekt wird als Match-Objekt bezeichnet und enthält Informationen zum ersten Treffer in der Suchzeichenfolge. Es ist praktisch, die Start- und Endindizes mit den Methoden start () bzw. end () abrufen zu können.

Suche nach Zeichenketten (mehrfach)

Wenn Sie ** alle ** des "oberen Alphabets" erhalten möchten, das in der Zeichenfolge "Ich bin ein Python-Anfänger A" enthalten ist.

search_exam_2.py


import re
string = "Ich bin Python-Anfänger A." #Definition der Zeichenfolge
pattern = re.compile("[A-Z]") #Definition des Musters für reguläre Ausdrücke
results = pattern.finditer(string) #Suche nach Zeichenfolgen

for result in results: #Suchergebnis-Iterator(results)Im Ergebnis
    print(result[0]) #Objektobjekt abgleichen
    print(result.start(), result.end())
P
2 3
A
11 12

Wenn Sie mit finditer nach einer Zeichenfolge suchen, wird der Iterator des Übereinstimmungsobjekts zurückgegeben. Erweitern Sie ihn daher nacheinander mit der for-Anweisung. Auf diese Weise werden mehrere Suchvorgänge durchgeführt. Was ist das Ergebnis [0]? Die Operation des Zugriffs auf die 0. Gruppe im Übereinstimmungsobjekt. Wenn Sie nach mehreren Zeichenfolgen suchen, enthält das Übereinstimmungsobjekt mehrere Gruppen.

Zusammenfassung

Hier repräsentiert das Muster ein beliebiges Objekt mit regulären Ausdrücken und die Übereinstimmung ein beliebiges Übereinstimmungsobjekt.

Funktion Inhalt
re.compile(r"Reguläre Ausdrücke") Reguläre Ausdrückeオブジェクトの生成
pattern.search(String) String内でpatternに一致した最初のマッチオブジェクト
pattern.finditer(String) String内でpatternに一致した全てのマッチオブジェクトのイテレータ
match.start( ) Startindex in der Suchergebniszeichenfolge
match.end( ) Index in der Suchergebniszeichenfolge beenden
match[0] Suchergebniszeichenfolge

Im Moment werden die mit "Suchen" und "Suchen" verbundenen Elemente aufgelistet. Ich werde es in Zukunft noch einmal hinzufügen.

Recommended Posts

Manipulation regulärer Ausdrücke durch Python
String-Ersetzung durch regulären Python-Ausdruck
Regulärer Ausdruck im Pymongo
Regulärer Ausdruck in Python
Python-Theorie regulärer Ausdruck Anmerkungen
Kombinieren Sie sich wiederholende Zeichenfolgen mit regulären Python-Ausdrücken zu einer.
Zerlegen Sie den Hostnamen mit co.jp mit regulärem Ausdruck
Umgang mit regulären Ausdrücken durch PHP / Python
FizzBuzz in Python3
Scraping mit Python
Manipulation von Python-Syntaxzeichenfolgen
Statistik mit Python
Scraping mit Python
Regulärer Ausdruck Gierig
Python mit Go
Twilio mit Python
Spielen Sie mit 2016-Python
Getestet mit Python
(Python) Hinweise zum Lesen von HTML und zur Verwendung regulärer Ausdrücke
[Python] Reguläre Ausdrücke Reguläre Ausdrücke
Ersetzen Sie Nicht-ASCII durch reguläre Ausdrücke in Python
mit Syntax (Python)
Bingo mit Python
Lassen Sie uns MySQL-Daten mit Python bearbeiten
Python: Vereinfachte morphologische Analyse mit regulären Ausdrücken
Python-Listenmanipulation
Regulärer Ausdruck re
Excel mit Python
Mikrocomputer mit Python
Mit Python besetzen
Überprüfung und Extraktion der URL-Übereinstimmung mit dem regulären Python-Ausdruck Regex Complete-Version
Lösen mit Ruby, Perl, Java und Python AtCoder ABC 047 C Regulärer Ausdruck
[Python] Werden Sie die Datierung mit regulären Ausdrücken los
Symbolischer Gruppenname für reguläre Ausdrücke in Python / Ruby
[Python] Ausdruck (1,2) macht kein Taple mit Klammern
Serielle Kommunikation mit Python
Zip, entpacken mit Python
Django 1.11 wurde mit Python3.6 gestartet
Primzahlbeurteilung mit Python
Python mit Eclipse + PyDev.
Socket-Kommunikation mit Python
Datenanalyse mit Python 2
Scraping in Python (Vorbereitung)
Versuchen Sie es mit Python.
Regulärer Ausdruck in regex.h
Python lernen mit ChemTHEATER 03
Sequentielle Suche mit Python
"Objektorientiert" mit Python gelernt
Führen Sie Python mit VBA aus
Umgang mit Yaml mit Python
Löse AtCoder 167 mit Python
Serielle Kommunikation mit Python
[Python] Verwenden Sie JSON mit Python
Python Node.js Zeichenmanipulation
Python lernen mit ChemTHEATER 05-1
Lerne Python mit ChemTHEATER
1.1 Erste Schritte mit Python
Binarisierung mit OpenCV / Python
3. 3. KI-Programmierung mit Python