Heim >Backend-Entwicklung >Python-Tutorial >So verwenden Sie reguläre Python-Ausdrücke für die Backend-Entwicklung

So verwenden Sie reguläre Python-Ausdrücke für die Backend-Entwicklung

王林
王林Original
2023-06-22 17:21:071252Durchsuche

In der Backend-Entwicklung sind Datenverarbeitung und Informationsextraktion sehr wichtig. Reguläre Ausdrücke sind ein leistungsstarkes Tool zur Datenverarbeitung und Informationsextraktion, das uns dabei helfen kann, die Back-End-Entwicklung effizienter durchzuführen. In diesem Artikel wird erläutert, wie Sie reguläre Python-Ausdrücke für die Back-End-Entwicklung verwenden.

1. Grundkenntnisse über reguläre Ausdrücke

Reguläre Ausdrücke sind ein Werkzeug zur Beschreibung von Zeichenmustern. Sie können uns dabei helfen, die erforderlichen Informationen in umfangreichen Textdaten schnell und korrekt abzugleichen.

Reguläre Ausdrücke bestehen normalerweise aus Zeichen, Operatoren und Metazeichen. Sonderzeichen und Metazeichen können eine Art von Zeichen oder eine Art von Übereinstimmungsregeln darstellen. Im Folgenden finden Sie eine Liste gängiger Metazeichen für reguläre Ausdrücke:

Entspricht () 2. Anwendung von Ausdrücke in PythonDas re-Modul ist in Python integriert, das vollständige Unterstützung für reguläre Ausdrücke bietet und die Datenverarbeitung und Informationsextraktion erleichtern kann. Wir können das Metazeichen d verwenden, um Zahlen abzugleichen, und +, um mehrere Zahlen abzugleichen:
import re

text = "John has 2 apples, and Jane has 3 oranges."

result = re.findall(r'd+', text)

print(result)
Die Ausgabe ist:
Metazeichen übereinstimmende Zeichen
Fluchtzeichen
. entspricht allen Zeichen außer Zeilenumbrüchen
^ Übereinstimmung mit dem Anfang der Zeichenfolge
$ Übereinstimmung mit dem Ende der Zeichenfolge
[] Zeichensatz
[^] Nicht-Zeichensatz
* Match 0 oder mehr Mal mit dem vorherigen Zeichen übereinstimmen
+ Entspricht dem vorherigen Zeichen 1 oder mehr Mal angegebene Häufigkeit
dem linken oder rechten Ausdruck
entspricht dem Ausdruck in Klammern, stellt auch die einfangende Gruppe dar
Zahlen in einer Zeichenfolge abgleichen
['2', '3']

Abgleich von E-Mail-Adressen

    Wir können [A - Za-z0-9._%+-]+ stimmt mit dem E-Mail-Benutzernamen überein. Verwenden Sie @[A-Za-z0-9.-]+.[A-Za-z]{2,}, um mit dem E-Mail-Domänennamen übereinzustimmen :
  1. import re
    
    text = "My email address is john@example.com."
    
    result = re.findall(r'[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+.[A-Za-z]{2,}', text)
    
    print(result)
  2. Das Ausgabeergebnis ist:
['john@example.com']

Hyperlinks in HTML abgleichen

    Wir können 686f92efee0b5818235db14b4df6cd31 verwenden Übereinstimmung in HTML Der Hyperlink:
import re

html = """
<a href="https://www.google.com">Google</a>,
<a href="https://www.baidu.com">Baidu</a>,
<a href="https://www.sogou.com">Sogou</a>,
"""

result = re.findall(r'<a[^>]+href="(.*?)"[^>]*>', html)

print(result)

Das Ausgabeergebnis ist:

['https://www.google.com', 'https://www.baidu.com', 'https://www.sogou.com']
3. Optimierungsfähigkeiten regulärer AusdrückeObwohl reguläre Ausdrücke sehr leistungsfähig sind, kann die Effizienz bei der Verarbeitung großer Datenmengen und komplexem Matching relativ gering werden. Daher müssen wir die Art und Weise, wie reguläre Ausdrücke geschrieben werden, optimieren, um eine schnellere Übereinstimmungsgeschwindigkeit zu erreichen. Wenn Sie eine Gruppe von Zeichen abgleichen, verwenden Sie den Zeichensatz [], um das angegebene Zeichen zu ersetzen. Zum Beispiel können wir [A-Za-z0-9] anstelle von [A-Z]|[a-z]|[ verwenden 0-9] , wodurch die Anzahl der Zeichen im regulären Ausdruck reduziert und die Abgleichsgeschwindigkeit optimiert werden kann.

Vermeiden Sie die Verwendung des Greedy-Modus.

Der Greedy-Modus bezieht sich auf ein Muster, das möglichst vielen Zeichen entspricht. Wenn beispielsweise „hell“ in der Zeichenfolge „hello world“ abgeglichen wird, wird re.findall(r'he.

l', text) mit „hello worl“ übereinstimmen, da .
    gierig mit „o wor“ übereinstimmt. Dies ist das Ergebnis wir wollen es nicht sehen. Um den Greedy-Modus zu vermeiden, können wir nach .
  1. ? hinzufügen und den Lazy-Modus verwenden, z. B. re.findall(r'he.
  2. ?l', text).

Verwenden Sie unformatierte Zeichenfolgen
  1. Reguläre Ausdrücke enthalten häufig Backslashes (). Wenn keine unformatierten Zeichenfolgen verwendet werden, werden die Backslashes als Escape-Zeichen interpretiert. Daher fügen wir normalerweise r vor dem regulären Ausdruck hinzu, um anzugeben, dass die ursprüngliche Zeichenfolge verwendet wird, z. B. re.findall(r'e394a3aeaaa8acac89d0bf00483ff7d6', text).

4. ZusammenfassungIn der Back-End-Entwicklung sind reguläre Ausdrücke ein sehr wichtiges Werkzeug, das uns bei der Datenverarbeitung und Informationsextraktion helfen und die Entwicklungseffizienz verbessern kann. Dieser Artikel führt in die Grundkenntnisse regulärer Ausdrücke und ihrer Anwendung in Python ein und bietet außerdem Optimierungstipps. Ich hoffe, dass er den Lesern hilfreich sein wird.

    >

Das obige ist der detaillierte Inhalt vonSo verwenden Sie reguläre Python-Ausdrücke für die Backend-Entwicklung. 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