Python

Regulárne výrazy v Pythone

Regulárne výrazy v Pythone
V tomto článku sa pozrieme na regulárne výrazy v pythone. Budeme pracovať na zabudovaných funkciách s príkladmi, za ktorými nasleduje tabuľka, ktorá vysvetľuje význam jednotlivých znakov v regulárnom výraze pre lepšie pochopenie.

Čo je to regulárny výraz?

Predtým, ako sa posunieme k praktickým príkladom, musíme vedieť, čo to regulárny výraz v skutočnosti je. Regulárny výraz je postupnosť znakov, ktorá definuje štruktúru vstupu alebo vyhľadávacieho vzoru. Predstavte si, že zadáte e-mail alebo heslo na nejaký náhodný web, ako je Facebook, Twitter alebo Microsoft. Skúste to uviesť zle a nesprávne myslím tým, že idete proti ich konvencii. Jednoznačne vás upozorní na tieto chyby. Nebude vám umožnené prejsť na ďalší krok, kým sa váš vstup nezhoduje so vzorom, ktorý nastavili v backende. Tento konkrétny vzor, ​​ktorý vás obmedzuje v ukladaní akýchkoľvek ďalších alebo irelevantných informácií, sa nazýva regulárny výraz alebo regulárny výraz.

Regulárne výrazy v Pythone

Regulárne výrazy nehrajú v pythone inú úlohu ako v iných programovacích jazykoch. Python obsahuje modul re ktorá poskytuje úplnú podporu pre použitie regulárnych výrazov. Kedykoľvek sa zadajú nevhodné alebo neporovnateľné informácie alebo dôjde k akejkoľvek chybe, dôjde k tomuto re modul to zachytí ako výnimku, ktorá nakoniec pomôže vyriešiť požadované problémy.

Regulárne výrazy

K dispozícii je veľa znakov napísaných v poradí, ktoré vytvára špecifický vzor regulárneho výrazu. Okrem riadiacich znakov, (+ ? . * ^ $ () [] | \), všetky postavy sa zhodujú. Riadiacim znakom je však možné uniknúť predpísaním spätnej lomky.

Nasleduje tabuľka, ktorá obsahuje vzor a popis ich práce v pythone.

Vzor Popis
[Pp] ython Zhoda „Python“ alebo „python“
Kúpa [Ee] Zhoda „TubE“ alebo „Tube“
[aeiou] Priraďte ľubovoľnú samohlásku s malými písmenami
[0-9] Priraďte ľubovoľnú číslicu od 0 do 9
[a-z] Priraďte akékoľvek malé písmeno ASCII
[A-Z] Priraďte ľubovoľné veľké písmeno ASCII
[a-zA-Z0-9] Priraďte všetky malé a veľké písmená ASCII
alebo číslicu od 0 do 9
[^ aeiou] Priraďte k čomukoľvek okrem malých samohlások
[^ 0-9] Priraďte k čomukoľvek okrem číslice
. Priraďte ľubovoľný znak okrem nového riadku
\ d Priraďte ľubovoľnú číslicu: [0-9]
\ D Zhoda s nečíselkou: [^ 0-9]
\ s Priraďte biele medzery
\ S Zhoda nebielych medzier
\ A Zhoda začiatku reťazca
\ Z Zhoda konca reťazca
\ w Zhoda slovných znakov
\ W Zhoda neslovných znakov
[…] Priraďte ľubovoľný znak v zátvorkách
[^…] Priraďte ľubovoľný jeden znak, ktorý nie je uvedený v zátvorkách
$ Zarovnajte koniec riadku
^ Porovnajte začiatok riadku

Funkcie hľadania a hľadania v Pythone

Teraz si ukážeme dva príklady dvoch zabudovaných funkcií, ktoré existujú v pythone. Jeden je zhoda a druhý je funkcia vyhľadávania. Obidva tieto parametre majú rovnaké parametre:

Predtým, ako sa vrhneme na ukážkovú časť, je tu ešte jedna vec, ktorú musíte vedieť. Na získanie zodpovedajúcich skupín je možné použiť dve metódy:

Čo sa stane, je to, že keď sa použijú funkcie zhody alebo vyhľadávania, vytvorí sa podskupiny všetkých súvisiacich vzorov nájdených v reťazcoch a štruktúruje sa na pozíciách od 0. V nasledujúcom príklade získate lepšiu predstavu.

Funkcia zhody (príklad)

V nasledujúcom príklade sme vzali zoznam, v ktorom sme použili regulárny výraz, ktorý kontroluje slová začínajúce písmenom „a“ a vyberie ich, iba ak obe slová začínajú rovnakým písmenom i.e.: „a“.

import re
arraylist = [„ovplyvnenie náklonnosti“, „akt náklonnosti“, „programovanie náklonnosti“]
pre prvok v zozname polí:
k = re.zhoda („(a \ w +) \ W (g \ w +)“, prvok)
ak k:
tlačiť ((z.skupiny ()))

Výkon:

('náklonnosť', 'ovplyvnenie')
('náklonnosť', 'čin')

Tretí prvok v zozname nebude braný do úvahy, pretože sa nezhoduje s regulárnym výrazom, ktorý hovorí, že obe slová by mali začínať zámenom „a“.

Funkcia vyhľadávania (príklad)

Táto funkcia sa líši od zhody. Vyhľadávanie prehľadáva celú vetu, zatiaľ čo zhoda nie. V nasledujúcom príklade je metóda vyhľadávania úspešná, ale funkcia zhody nie.

import re
Vstup = „DocumentationNew“
v = re.hľadať („(ta.*) ”, Vstup)
ak v:
tlač („výsledok:“ v.skupina (1))

Výkon:

výsledok: tationNew

'ta.* „znamená čokoľvek po„ ta “, čo nám dáva výsledok„ tationNew “z hľadaného vstupu„ DocumentationNew “.

Záver

Regulárne výrazy sú zásadné pre všetkých vývojárov softvéru a teraz môžete ľahko zistiť, ako používať regulárne výrazy v programovacom jazyku Python.

Ako zmeniť ľavé a pravé tlačidlo myši na počítači so systémom Windows 10
Je úplnou normou, že všetky zariadenia počítačových myší sú ergonomicky navrhnuté pre pravákov. Existujú však dostupné myšacie zariadenia, ktoré sú šp...
Napodobňovanie kliknutí myšou vznášaním sa pomocou myši bez myši vo Windows 10
Používanie myši alebo klávesnice v nesprávnom postoji k nadmernému používaniu môže mať za následok veľa zdravotných problémov vrátane napätia, syndróm...
Pridajte gestá myši do systému Windows 10 pomocou týchto bezplatných nástrojov
V posledných rokoch sa počítače a operačné systémy veľmi vyvinuli. Boli časy, keď používatelia museli prechádzať správcami súborov pomocou príkazov. R...