Moduuli Säännölliset lausekkeet(RE) määrittää joukon merkkijonoja(pattern), joka vastaa sitä.
Ymmärtääksemme RE-analogian, MetaCharacters ovat hyödyllisiä, tärkeitä ja niitä käytetään moduulin re funktioissa.
Metamerkkejä on yhteensä 14, ja niitä käsitellään, kun ne seuraavat funktioissa:

\ 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
  • Funktio compile()
    Regulaariset lausekkeet käännetään kuvio-objekteiksi, joilla on metodeja erilaisiin operaatioihin, kuten kuvion vastaavuuksien etsimiseen tai merkkijonojen korvausten suorittamiseen.
Python

.

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



Output:


Tuloksen ymmärtäminen:
Ensimmäinen esiintymä on ’e’ sanassa ’Aye’ eikä ’A’, koska se on Case Sensitive.
Seuraava esiintymä on ’a’ sanassa ”said”, sitten ’d’ sanassa ”said”, sitten ’b’ ja ’e’ sanassa ”Gibenson”, viimeinen ’a’ täsmää sanan ”Stark” kanssa.
Metatakimerkillä backslash ’\’ on erittäin tärkeä rooli, koska se ilmaisee erilaisia sekvenssejä. Jos backslash-merkkiä halutaan käyttää ilman sen erityistä merkitystä metamerkkinä, käytä ’\\’

Set-luokka vastaa mitä tahansa välilyöntimerkkiä, ’,’, tai,’.’ .

Tulostus:


Output:


Python

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



Output:


Tuloksen ymmärtäminen:
Tulos ’ab’ on kelvollinen, koska siinä on yksi ’a’, johon liittyy yksi ’b’.
Tulos ”abb”, on kelvollinen, koska siihen liittyy yksi ”a” ja 2 ”b”.
Tulos ”a”, on kelvollinen, koska siihen liittyy yksittäinen ”a” ja 0 ”b”.
Tulos ’abbb’, on kelvollinen, koska yksittäisen ’a’-merkin mukana on 3 ’b’-merkkiä.

  • Funktio split()
    Jakaja merkkijono merkin tai kuvion esiintymien perusteella, kuvion löydyttyä merkkijonon jäljelle jäävät merkit palautetaan osana tuloksena olevaa listaa.
    Syntaksi :
 re.split(pattern, string, maxsplit=0, flags=0)

Ensimmäinen parametri, pattern tarkoittaa säännöllistä lauseketta, string on annettu merkkijono, josta kuviota etsitään ja jossa halkaisu tapahtuu, maxsplit, jos sitä ei anneta, katsotaan nollaksi ’0’, ja jos jokin nollasta poikkeava arvo annetaan, tapahtuu korkeintaan niin monta halkaisua. Jos maxsplit = 1, merkkijono halkaistaan vain kerran, jolloin tuloksena on lista, jonka pituus on 2. Liput ovat erittäin hyödyllisiä ja voivat auttaa lyhentämään koodia, ne eivät ole välttämättömiä parametreja, esim: flags = re.IGNORECASE, Tässä halkaisussa isot ja pienet kirjaimet jätetään huomiotta.

Tulos:


Output:


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

Funktiossa ’sub’ tarkoittaa SubString, tietty säännöllisen lausekkeen kuvio etsitään annetusta merkkijonosta(3. parametri), ja löydettäessä alimerkkijonon kuvio korvataan repl:llä(2. parametri), count tarkistaa ja ylläpitää kuinka monta kertaa tämä tapahtuu.

Tulos

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

subn() on kaikin tavoin samanlainen kuin sub(), lukuun ottamatta sen tapaa antaa ulostulo. Se palauttaa tuplen, jossa on korvausten kokonaismäärä ja uusi merkkijono, eikä pelkkää merkkijonoa.

Tulostus

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

Palauttaa merkkijonon, jossa kaikki muut kuin aakkosnumeeriset merkit ovat takaisinviivattuja, tämä on hyödyllistä, jos haluat sovittaa mielivaltaisen kirjaimellisen merkkijonon, jossa voi olla säännöllisen lausekkeen metamerkkejä.

Python

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



Tulos

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

Tämän artikkelin on kirjoittanut Piyush Doorwar. Jos pidät GeeksforGeeksistä ja haluat osallistua, voit myös kirjoittaa artikkelin osoitteessa contribute.geeksforgeeks.org tai lähettää artikkelisi sähköpostitse osoitteeseen [email protected]. Näet artikkelisi näkyvän GeeksforGeeksin pääsivulla ja autat muita nörttejä.
Kirjoita kommentteja, jos löydät jotain virheellistä tai haluat jakaa lisää tietoa yllä käsitellystä aiheesta.

Attention geek! Vahvista perustasi Python-ohjelmoinnin peruskurssilla ja opi perusteet.

Aloittaaksesi haastatteluvalmistelut Paranna tietorakenteiden käsitteitäsi Python DS-kurssilla.

Artikkeli Tunnisteet :

Vastaa

Sähköpostiosoitettasi ei julkaista.