⊗pyPmREInr 33 of 129 menu

Įvadas į reguliariąsias išraiškas Python kalba

Reguliariosios išraiškos yra komandos sudėtingai paieškai ir pakeitimui (arba tiesiog paieškai). Jos leidžia daryti labai įdomius dalykus, bet, deja, gana sunkiai įsisavinamos.

Norint pradėti dirbti su reguliariosiomis išraiškomis Python, mums reikia importuoti specialųjį modulį re:

import re

Modulis re apima metodus, skirtus darbui su reguliosiomis išraiškomis. Regularioji išraiška reiškia komandų rinkinį ir susideda iš dviejų simbolių tipų: iš tų, kurie reiškia patys save, ir iš komandų simbolių, kurie vadinami specialiaisiais simboliais.

Pažintį su reguliariosiomis išraiškomis geriau pradėti pavyzdžiu su metodu sub, kuris naudojamas pakeitimams eilutėje. Pirmuoju parametru metodas priima ką keisti, antruoju - į ką keisti. Trečiajame parametre nurodome eilutę, kurioje reikia atlikti pakeitimą. Ketvirtajame neprivalomame parametre nustatome pakeitimų kiekį. Paprasčiausias pakeitimas naudojant šį metodą atrodys taip:

res = re.sub('a', '!', 'bab') print(res) # išves 'b!b'

Kaip pastebėjote, reguliariojoje išraiškoje raidės reiškia patys save. Tas pats taikomas ir skaitmenims. Pakeiskime skaitmenį 2 į !:

res = re.sub('2', '!', '12abc3') print(res) # išves '1!abc3'

O taškas yra specialusis simbolis ir reiškia bet kurį simbolį. Sekančiame pavyzdyje suraskime poeilutę pagal tokį šabloną: raidė 'x', po to bet koks simbolis, po to vėl raidė 'x':

res = re.sub('x.x', '!', 'xax eee') print(res) # išves '! eee'

Duota eilutė:

txt = 'ahb acb aeb aeeb adcb axeb'

Parašykite reguliariąją išraišką, kuri surastų eilutes 'ahb', 'acb', 'aeb' pagal šabloną: raidė 'a', bet koks simbolis, raidė 'b'.

Duota eilutė:

txt = 'aba aca aea abba adca abea'

Parašykite reguliariąją išraišką, kuri surastų eilutes 'abba', 'adca', 'abea' pagal šabloną: raidė 'a', 2 bet kokie simboliai, raidė 'a'.

Duota eilutė:

txt = 'aba aca aea abba adca abea'

Parašykite reguliariąją išraišką, kuri surastų eilutes 'abba' ir 'abea', neperimant 'adca'.

Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti