Python -Tutorial

Python-HOME Python-Einführung Python-Erste Schritte Python-Syntax Python-Kommentare Python-Variablen Python-Datentypen Python-Zahlen Python-Casting Python-Strings Python-Booleans Python-Operatoren Python-Listen Python-Tupel Python-Sets Python-Wörterbücher Python Wenn ... Sonst Python-While-Schleifen Python-For-Schleifen Python-Funktionen Python-Lambda Python-Arrays Python-Klassen/Objekte Python-Vererbung Python-Iteratoren Python-Bereich Python-Module Python-Daten Python-Mathematik Python-JSON Python-RegEx Python-PIP Python Versuchen ... Außer Python-Benutzereingabe Formatierung von Python-Strings

Umgang mit Dateien

Umgang mit Python-Dateien Python-Dateien lesen Python-Dateien schreiben/erstellen Python-Dateien löschen

Python-Module

NumPy-Tutorial Panda-Komplettlösung Scipy-Tutorial

Python-Matplotlib

Matplotlib-Einführung Matplotlib loslegen Matplotlib-Pyplot Matplotlib-Plotten Matplotlib-Marker Matplotlib-Linie Matplotlib-Labels Matplotlib-Raster Matplotlib-Subplots Matplotlib-Scatter Matplotlib-Bars Matplotlib-Histogramme Matplotlib-Kreisdiagramme

Maschinelles Lernen

Einstieg Mittlerer Medianmodus Standardabweichung Perzentil Datenverteilung Normale Datenverteilung Streudiagramm Lineare Regression Polynomiale Regression Mehrfache Regression Skala Trainieren/Testen Entscheidungsbaum

Python-MySQL

MySQL-erste Schritte MySQL-Datenbank erstellen MySQL-Tabelle erstellen MySQL-Einfügung MySQL-Auswahl MySQL-Wo MySQL-Reihenfolge nach MySQL löschen MySQL-Drop-Tabelle MySQL-Update MySQL-Limit MySQL-Beitritt

Python-MongoDB

Beginnen Sie mit MongoDB MongoDB Datenbank erstellen MongoDB-Create-Sammlung MongoDB-Einfügung MongoDB-Suche MongoDB-Abfrage MongoDB-Sortierung MongoDB löschen MongoDB-Drop-Sammlung MongoDB-Update MongoDB-Limit

Python-Referenz

Python-Übersicht Eingebaute Python-Funktionen Python-String-Methoden Python-Listenmethoden Methoden des Python-Wörterbuchs Python-Tupelmethoden Python-Set-Methoden Python-Dateimethoden Python-Schlüsselwörter Python-Ausnahmen Python-Glossar

Modulreferenz

Zufallsmodul Anforderungsmodul Statistikmodul Mathe-Modul cMath-Modul

Python-Anleitung

Listenduplikate entfernen Einen String umkehren Fügen Sie zwei Zahlen hinzu

Python-Beispiele

Python-Beispiele Python-Compiler Python-Übungen Python-Quiz Python-Zertifikat

Python -RegEx


Ein RegEx oder Regulärer Ausdruck ist eine Zeichenfolge, die ein Suchmuster bildet.

RegEx kann verwendet werden, um zu prüfen, ob ein String das angegebene Suchmuster enthält.


RegEx-Modul

Python hat ein eingebautes Paket namens re, das verwendet werden kann, um mit regulären Ausdrücken zu arbeiten.

Modul reimportieren:

import re

RegEx in Python

Wenn Sie das reModul importiert haben, können Sie mit der Verwendung regulärer Ausdrücke beginnen:

Beispiel

Durchsuchen Sie die Zeichenfolge, um zu sehen, ob sie mit „The“ beginnt und mit „Spain“ endet:

import re

txt = "The rain in Spain"
x = re.search("^The.*Spain$", txt)

RegEx-Funktionen

Das reModul bietet eine Reihe von Funktionen, mit denen wir eine Zeichenfolge nach einer Übereinstimmung durchsuchen können:

Function Description
findall Returns a list containing all matches
search Returns a Match object if there is a match anywhere in the string
split Returns a list where the string has been split at each match
sub Replaces one or many matches with a string


Metazeichen

Metazeichen sind Zeichen mit besonderer Bedeutung:

Character Description Example Try it
[] A set of characters "[a-m]"
\ Signals a special sequence (can also be used to escape special characters) "\d"
. Any character (except newline character) "he..o"
^ Starts with "^hello"
$ Ends with "planet$"
* Zero or more occurrences "he.*o"
+ One or more occurrences "he.+o"
? Zero or one occurrences "he.?o"
{} Exactly the specified number of occurrences "he{2}o"
| Either or "falls|stays"
() Capture and group    

Spezielle Sequenzen

Eine spezielle Sequenz ist ein \gefolgt von einem der Zeichen in der folgenden Liste und hat eine spezielle Bedeutung:

Character Description Example Try it
\A Returns a match if the specified characters are at the beginning of the string "\AThe"
\b Returns a match where the specified characters are at the beginning or at the end of a word
(the "r" in the beginning is making sure that the string is being treated as a "raw string")
r"\bain"
r"ain\b"

\B Returns a match where the specified characters are present, but NOT at the beginning (or at the end) of a word
(the "r" in the beginning is making sure that the string is being treated as a "raw string")
r"\Bain"
r"ain\B"

\d Returns a match where the string contains digits (numbers from 0-9) "\d"
\D Returns a match where the string DOES NOT contain digits "\D"
\s Returns a match where the string contains a white space character "\s"
\S Returns a match where the string DOES NOT contain a white space character "\S"
\w Returns a match where the string contains any word characters (characters from a to Z, digits from 0-9, and the underscore _ character) "\w"
\W Returns a match where the string DOES NOT contain any word characters "\W"
\Z Returns a match if the specified characters are at the end of the string "Spain\Z"

Sets

Ein Satz ist ein Satz von Zeichen in einem Paar eckiger Klammern []mit einer besonderen Bedeutung:

Set Description Try it
[arn] Returns a match where one of the specified characters (a, r, or n) are present
[a-n] Returns a match for any lower case character, alphabetically between a and n
[^arn] Returns a match for any character EXCEPT a, r, and n
[0123] Returns a match where any of the specified digits (0, 1, 2, or 3) are present
[0-9] Returns a match for any digit between 0 and 9
[0-5][0-9] Returns a match for any two-digit numbers from 00 and 59
[a-zA-Z] Returns a match for any character alphabetically between a and z, lower case OR upper case
[+] In sets, +, *, ., |, (), $,{} has no special meaning, so [+] means: return a match for any + character in the string

 

Die Funktion findall()

Die findall()Funktion gibt eine Liste mit allen Übereinstimmungen zurück.

Beispiel

Drucken Sie eine Liste aller Übereinstimmungen:

import re

txt = "The rain in Spain"
x = re.findall("ai", txt)
print(x)

Die Liste enthält die Übereinstimmungen in der Reihenfolge, in der sie gefunden wurden.

Wenn keine Übereinstimmungen gefunden werden, wird eine leere Liste zurückgegeben:

Beispiel

Gibt eine leere Liste zurück, wenn keine Übereinstimmung gefunden wurde:

import re

txt = "The rain in Spain"
x = re.findall("Portugal", txt)
print(x)

 

Die search()-Funktion

Die search()Funktion durchsucht den String nach einer Übereinstimmung und gibt ein Match-Objekt zurück, wenn es eine Übereinstimmung gibt.

Wenn es mehr als eine Übereinstimmung gibt, wird nur das erste Vorkommen der Übereinstimmung zurückgegeben:

Beispiel

Suchen Sie nach dem ersten Leerzeichen in der Zeichenfolge:

import re

txt = "The rain in Spain"
x = re.search("\s", txt)

print("The first white-space character is located in position:", x.start())

Wenn keine Übereinstimmungen gefunden werden, wird der Wert Nonezurückgegeben:

Beispiel

Führen Sie eine Suche durch, die keine Übereinstimmung zurückgibt:

import re

txt = "The rain in Spain"
x = re.search("Portugal", txt)
print(x)

 

Die Funktion split()

Die split()Funktion gibt eine Liste zurück, in der die Zeichenfolge bei jeder Übereinstimmung geteilt wurde:

Beispiel

Bei jedem Leerzeichen teilen:

import re

txt = "The rain in Spain"
x = re.split("\s", txt)
print(x)

Sie können die Anzahl der Vorkommen steuern, indem Sie den maxsplit Parameter angeben:

Beispiel

Teilen Sie die Zeichenfolge nur beim ersten Auftreten:

import re

txt = "The rain in Spain"
x = re.split("\s", txt, 1)
print(x)

 

Die sub()-Funktion

Die sub()Funktion ersetzt die Treffer durch den Text Ihrer Wahl:

Beispiel

Ersetzen Sie jedes Leerzeichen durch die Zahl 9:

import re

txt = "The rain in Spain"
x = re.sub("\s", "9", txt)
print(x)

Sie können die Anzahl der Ersetzungen steuern, indem Sie den count Parameter angeben:

Beispiel

Ersetzen Sie die ersten 2 Vorkommen:

import re

txt = "The rain in Spain"
x = re.sub("\s", "9", txt, 2)
print(x)

 

Objekt abgleichen

Ein Match-Objekt ist ein Objekt, das Informationen über die Suche und das Ergebnis enthält.

Hinweis: Wenn es keine Übereinstimmung gibt, wird der Wert Noneanstelle des Übereinstimmungsobjekts zurückgegeben.

Beispiel

Führen Sie eine Suche durch, die ein Match-Objekt zurückgibt:

import re

txt = "The rain in Spain"
x = re.search("ai", txt)
print(x) #this will print an object

Das Match-Objekt verfügt über Eigenschaften und Methoden, die verwendet werden, um Informationen über die Suche und das Ergebnis abzurufen:

.span()gibt ein Tupel zurück, das die Start- und Endposition der Übereinstimmung enthält.
.stringgibt den an die Funktion übergebenen String
.group()zurück gibt den Teil des Strings zurück, in dem es eine Übereinstimmung gab

Beispiel

Druckt die Position (Start- und Endposition) des ersten Übereinstimmungsvorkommens.

Der reguläre Ausdruck sucht nach Wörtern, die mit einem großen „S“ beginnen:

import re

txt = "The rain in Spain"
x = re.search(r"\bS\w+", txt)
print(x.span())

Beispiel

Drucken Sie die an die Funktion übergebene Zeichenfolge:

import re

txt = "The rain in Spain"
x = re.search(r"\bS\w+", txt)
print(x.string)

Beispiel

Gibt den Teil der Zeichenfolge aus, in dem es eine Übereinstimmung gab.

Der reguläre Ausdruck sucht nach Wörtern, die mit einem großen „S“ beginnen:

import re

txt = "The rain in Spain"
x = re.search(r"\bS\w+", txt)
print(x.group())

Hinweis: Wenn es keine Übereinstimmung gibt, wird der Wert Noneanstelle des Übereinstimmungsobjekts zurückgegeben.