Modul Reguläre Ausdrücke (RE) gibt eine Menge von Zeichenfolgen (Muster) an, die darauf passen.
Um die RE-Analogie zu verstehen, sind MetaZeichen nützlich, wichtig und werden in Funktionen des Moduls re verwendet.
Es gibt insgesamt 14 MetaZeichen, die im Folgenden in Funktionen besprochen werden:

\ Used to drop the special meaning of character following it (discussed below) Represent a character class^ Matches the beginning$ Matches the end. Matches any character except newline? Matches zero or one occurrence.| Means OR (Matches with any of the characters separated by it.* Any number of occurrences (including 0 occurrences)+ One or more occurrences{} Indicate number of occurrences of a preceding RE to match.() Enclose a group of REs
  • Funktion compile()
    Regelmäßige Ausdrücke werden zu Musterobjekten kompiliert, die über Methoden für verschiedene Operationen verfügen, wie z.B. die Suche nach Musterübereinstimmungen oder die Durchführung von Stringsubstitutionen.
Python

import re
p = re.compile('')
print(p.findall("Aye, said Mr. Gibenson Stark"))



Ausgabe:


Verständnis der Ausgabe:
Erstes Vorkommen ist ‚e‘ in „Aye“ und nicht ‚A‘, da zwischen Groß- und Kleinschreibung unterschieden wird.
Nächstes Vorkommen ist ‚a‘ in „said“, dann ‚d‘ in „said“, gefolgt von ‚b‘ und ‚e‘ in „Gibenson“, das letzte ‚a‘ stimmt mit „Stark“ überein.
Metacharakter Backslash ‚\‘ hat eine sehr wichtige Rolle, da es verschiedene Sequenzen signalisiert. Wenn der Backslash ohne seine besondere Bedeutung als Metacharakter verwendet werden soll, verwenden Sie ‚\\‘

Die Klasse passt auf jedes Leerzeichen, ‚,‘, oder,‘.‘ .

Ausgabe:


Ausgabe:


Python

import re
p = re.compile('ab*')
print(p.findall("ababbaabbb"))



Ausgabe:


Verständnis des Outputs:
Unser RE ist ab*, das ‚a‘ begleitet von einer beliebigen Anzahl von ‚b’s, beginnend bei 0.
Ausgabe ‚ab‘, ist gültig, weil einzelnes ‚a‘ begleitet von einzelnem ‚b‘.
Ausgabe ‚abb‘, ist gültig, weil ein einzelnes ‚a‘ von 2 ‚b‘ begleitet wird.
Ausgabe ‚a‘, ist gültig, weil einzelnes ‚a‘ begleitet von 0 ‚b‘.
Ausgabe ‚abbb‘, ist gültig, weil einzelnes ‚a‘ von 3 ‚b‘ begleitet wird.

  • Funktion split()
    Teilt Zeichenkette nach dem Vorkommen eines Zeichens oder eines Musters auf, wenn dieses Muster gefunden wird, werden die verbleibenden Zeichen der Zeichenkette als Teil der resultierenden Liste zurückgegeben.
    Syntax :
 re.split(pattern, string, maxsplit=0, flags=0)

Der erste Parameter, pattern bezeichnet den regulären Ausdruck, string ist die angegebene Zeichenkette, in der nach dem Muster gesucht wird und in der die Aufteilung erfolgt, maxsplit, wenn nicht angegeben, wird als Null ‚0‘ betrachtet, und wenn ein Wert ungleich Null angegeben wird, dann erfolgt höchstens so viele Aufteilungen. Wenn maxsplit = 1, dann wird der String nur einmal geteilt, was zu einer Liste der Länge 2 führt. Die Flags sind sehr nützlich und können helfen, den Code zu verkürzen, sie sind keine notwendigen Parameter, z.B.: flags = re.IGNORECASE, In diesem Split wird die Groß- und Kleinschreibung ignoriert.

Ausgabe:


Ausgabe:


  • Funktion sub()
    Syntax:
 re.sub(pattern, repl, string, count=0, flags=0)

Das ’sub‘ in der Funktion steht für SubString, ein bestimmtes reguläres Ausdrucksmuster wird in der gegebenen Zeichenkette (3. Parameter) gesucht, und wenn es gefunden wird, wird das Teilstring-Muster durch repl(2. Parameter) ersetzt, count prüft und speichert die Anzahl, wie oft dies geschieht.

Ausgabe

S~*ject has ~*er booked alreadyS~*ject has Uber booked alreadyS~*ject has Uber booked alreadyBaked Beans & Spam
  • Funktion subn()
    Syntax:
 re.subn(pattern, repl, string, count=0, flags=0)

subn() ähnelt sub() in jeder Hinsicht, außer in der Art und Weise, wie sie die Ausgabe liefert. Es gibt ein Tupel mit der Anzahl der gesamten Ersetzungen und der neuen Zeichenkette zurück, anstatt nur die Zeichenkette.

Ausgabe

('S~*ject has Uber booked already', 1)('S~*ject has ~*er booked already', 2)Length of Tuple is: 2S~*ject has ~*er booked already
  • Funktion escape()
    Syntax:
re.escape(string)

Rückgabe der Zeichenkette mit allen nicht-alphanumerischen Zeichen als Backslasher; dies ist nützlich, wenn Sie eine beliebige Zeichenkette abgleichen wollen, die Metazeichen eines regulären Ausdrucks enthalten kann.

Python

import re
print(re.escape("This is Awseome even 1 AM"))
print(re.escape("I Asked what is this , he said \t ^WoW"))



Output

This\ is\ Awseome\ even\ 1\ AMI\ Asked\ what\ is\ this\ \,\ he\ said\ \ \ \^WoW

Dieser Artikel wurde von Piyush Doorwar verfasst. Wenn Ihnen GeeksforGeeks gefällt und Sie einen Beitrag leisten möchten, können Sie auch einen Artikel unter contribute.geeksforgeeks.org schreiben oder eine E-Mail an [email protected] senden. Sieh zu, dass dein Artikel auf der GeeksforGeeks-Hauptseite erscheint und hilf anderen Geeks.
Bitte schreibe einen Kommentar, wenn du etwas falsch findest oder mehr Informationen über das oben besprochene Thema mitteilen möchtest.

Attention geek! Stärken Sie Ihr Fundament mit dem Python Programming Foundation Course und lernen Sie die Grundlagen.

Beginnen Sie mit Ihren Interviewvorbereitungen Erweitern Sie Ihre Datenstrukturkonzepte mit dem Python DS Kurs.

Artikel Tags :

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.