Module Reguliere Expressies(RE) specificeert een set van strings(patroon) die ermee overeenkomen.
Om de RE-analogie te begrijpen, zijn MetaCharacters nuttig, belangrijk en zullen worden gebruikt in functies van module re.
Er zijn in totaal 14 metacharacters en deze zullen worden besproken als ze in functies volgen:

\ 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
  • Functie compile()
    Reguliere expressies worden gecompileerd in patroonobjecten, die methoden hebben voor diverse bewerkingen, zoals het zoeken naar patroonovereenkomsten of het uitvoeren van tekenreeksvervangingen.
Python

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



Output:


Uitvoer:
Eerste voorkomen is ‘e’ in “Aye” en niet ‘A’, omdat het hoofdlettergevoelig is.
Volgende voorkomen is ‘a’ in ‘zei’, dan ‘d’ in ‘zei’, gevolgd door ‘b’ en ‘e’ in ‘Gibenson’, de laatste ‘a’ komt overeen met ‘Stark’.
Metacharacter backslash ‘heeft een zeer belangrijke rol omdat het verschillende reeksen aangeeft. Als de backslash moet worden gebruikt zonder zijn speciale betekenis als metacharacter, gebruik dan’

Set klasse zal overeenkomen met elk witruimteteken, ‘,’, of,’.’ .

Uitvoer:


Uitvoer:


Python

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



Output:


Onderzoek van de output:
Onze RE is ab*, die ‘a’ vergezeld van een willekeurig aantal ‘b’s, te beginnen met 0.
Output ‘ab’, is geldig vanwege enkele ‘a’ vergezeld van enkele ‘b’.
Output ‘abb’, is geldig vanwege enkele ‘a’ vergezeld van 2 ‘b’.
Uitvoer ‘a’, is geldig vanwege enkelvoudige ‘a’ vergezeld van 0 ‘b’.
Uitvoer ‘abbb’, is geldig vanwege enkelvoudige ‘a’ vergezeld van 3 ‘b’.

  • Functie split()
    Splits tekenreeks door het voorkomen van een teken of een patroon. Als dat patroon is gevonden, worden de resterende tekens uit de tekenreeks geretourneerd als onderdeel van de resulterende lijst.
    Syntax :
 re.split(pattern, string, maxsplit=0, flags=0)

De eerste parameter, patroon geeft de reguliere expressie aan, string is de gegeven string waarin naar het patroon wordt gezocht en waarin de splitsing plaatsvindt, maxsplit indien niet opgegeven, wordt beschouwd als nul ‘0’, en indien een waarde van nul is opgegeven, dan vindt maximaal dat aantal splitsingen plaats. Als maxsplit = 1, dan wordt de string slechts eenmaal gesplitst, wat resulteert in een lijst van lengte 2. De vlaggen zijn zeer nuttig en kunnen helpen om de code in te korten, het zijn geen noodzakelijke parameters, bv: flags = re.IGNORECASE, In deze splitsing worden hoofdletters genegeerd.

Output:


Output:


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

De ‘sub’ in de functie staat voor SubString, een bepaald reguliere expressiepatroon wordt gezocht in de gegeven string(3e parameter), en bij het vinden van de substring wordt het patroon vervangen door repl(2e parameter), count controleert en bewaart het aantal keren dat dit voorkomt.

Uitvoer

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

subn() is in alle opzichten vergelijkbaar met sub(), behalve wat betreft de manier waarop uitvoer wordt gegeven. Het geeft een tupel terug met het aantal totale vervangingen en de nieuwe string in plaats van alleen de string.

Uitvoer

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

Terugkeerstring met alle niet-alfanumerieke tekens backslashed, dit is handig als u wilt overeenkomen met een willekeurige letterlijke tekenreeks die mogelijk metacharacters van een reguliere expressie bevat.

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

Dit artikel is geschreven door Piyush Doorwar. Als je GeeksforGeeks leuk vindt en een bijdrage wilt leveren, kun je ook een artikel schrijven via contribute.geeksforgeeks.org of mail je artikel naar [email protected]. Zie je artikel verschijnen op de hoofdpagina van GeeksforGeeks en help andere geeks.
Gelieve commentaar te schrijven als je iets onjuist vindt, of als je meer informatie wilt delen over het onderwerp dat hierboven is besproken.

Attentie geek! Versterk je basis met de Python Programming Foundation Course en leer de basis.

Om te beginnen met je interviewvoorbereidingen Verbeter je Data Structures-concepten met de Python DS Course.

Artikel Tags :

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.