Modul Regular Expressions(RE) angiver et sæt strenge(mønster), der matcher det.
For at forstå RE-analogien er MetaCharacters nyttige, vigtige og vil blive brugt i funktioner i modul re.
Der er i alt 14 metakendetegn og vil blive diskuteret efterhånden som de følger ind i funktioner:

\ 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()
    Regulære udtryk kompileres til mønsterobjekter, som har metoder til forskellige operationer som f.eks. søgning efter mønsteroverensstemmelser eller udførelse af strengsubstitutioner.
Python

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



Output:


Forståelse af output:
Første forekomst er ‘e’ i “Aye” og ikke ‘A’, da det er case sensitiv.
Næste forekomst er ‘a’ i “said”, derefter ‘d’ i “said”, efterfulgt af ‘b’ og ‘e’ i “Gibenson”, den sidste ‘a’ matcher med “Stark”.
Metakendetegnet backslash ‘\’ har en meget vigtig rolle, da det signalerer forskellige sekvenser. Hvis backslash skal bruges uden sin særlige betydning som metategn, skal du bruge ‘\\’

Sæt klassen vil matche ethvert whitespace-tegn, ‘,’, eller,’.’ .

Output:


Output:


Output:


Python

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



Output:


Forståelse af output:
Vores RE er ab*, som “a” ledsaget af et vilkårligt antal “b’er, startende fra 0.
Output “ab”, er gyldigt, fordi der er et enkelt “a” ledsaget af et enkelt “b”.
Output “abb” er gyldigt, fordi der er et enkelt “a” ledsaget af 2 “b”.
Output “a”, er gyldig på grund af enkelt “a” ledsaget af 0 “b”.
Output ‘abbb’, er gyldig på grund af enkelt ‘a’ ledsaget af 3 ‘b’.

  • Funktion split()
    Splitter streng efter forekomsten af et tegn eller et mønster, når dette mønster er fundet, returneres de resterende tegn fra strengen som en del af den resulterende liste.
    Syntaks :
 re.split(pattern, string, maxsplit=0, flags=0)

Den første parameter, pattern betegner det regulære udtryk, string er den givne streng, hvori der søges efter mønsteret, og hvori der sker opsplitning, maxsplit, hvis den ikke er angivet, anses for at være nul ‘0’, og hvis der angives en værdi, der ikke er nul, sker der højst så mange opsplitninger som muligt. Hvis maxsplit = 1, vil strengen kun blive delt én gang, hvilket resulterer i en liste af længde 2. Flagene er meget nyttige og kan være med til at forkorte koden, de er ikke nødvendige parametre, f.eks. flags = re.IGNORECASE, I denne opdeling vil kasus blive ignoreret.

Output:


Output:


Output:


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

“sub” i funktionen står for SubString, et bestemt regulært udtryksmønster søges i den givne streng(3. parameter), og når mønsteret findes, erstattes det med repl(2. parameter), count kontrollerer og vedligeholder antallet af gange, dette sker.

Output

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

subn() svarer på alle måder til sub(), undtagen i sin måde at levere output på. Den returnerer en tupel med tallet for den samlede erstatning og den nye streng i stedet for blot strengen.

Output

('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()
    Syntaks:
re.escape(string)

Returnerer streng med alle ikke-alfanumeriske tegn med bagstreg, dette er nyttigt, hvis du ønsker at matche en vilkårlig bogstavelig streng, der kan have metakendetegn i regulære udtryk.

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

Denne artikel er bidraget af Piyush Doorwar. Hvis du kan lide GeeksforGeeks og gerne vil bidrage, kan du også skrive en artikel ved hjælp af contribute.geeksforgeeks.org eller sende din artikel på mail til [email protected]. Se din artikel blive vist på GeeksforGeeks’ hovedside, og hjælp andre nørder.
Skriv kommentarer, hvis du finder noget forkert, eller hvis du ønsker at dele flere oplysninger om det emne, der er behandlet ovenfor.

Attention nørd! Styrk dit fundament med Python Programming Foundation Course og lær det grundlæggende.

Til at begynde med, dine interviewforberedelser Forbedre dine datastrukturer begreber med Python DS Course.

Artikel Tags :

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.