⊗pyPmRECB 37 of 129 menu

Acolade în expresiile regulate Python

Operatorii '+', '*', '?' sunt buni, totuși, cu ajutorul lor nu se poate specifica un număr exact de repetări. În acest caz vine în ajutor operatorul {}.

Funcționează astfel: {5} - cinci repetări, {2,5} – se repetă de la doi la cinci (ambele incluse), {2,} - se repetă de două ori sau mai mult. Uitați-vă la exemple:

Exemplu

În acest exemplu, șablonul de căutare arată astfel: litera 'x', litera 'a' o dată sau de două ori, litera 'x':

txt = 'xx xax xaax xaaax' res = re.sub('xa{1,2}x', '!', txt) print(res)

Rezultatul executării codului:

'xx ! ! xaaax'

Exemplu

În acest exemplu, șablonul de căutare arată astfel: litera 'x', litera 'a' de două ori sau mai mult, litera 'x':

txt = 'xx xax xaax xaaax' res = re.sub('xa{2,}x', '!', txt) print(res)

Rezultatul executării codului:

'xx xax ! !'

Exemplu

În acest exemplu, șablonul de căutare arată astfel: litera 'x', litera 'a' de trei ori, litera 'x':

txt = 'xx xax xaax xaaax' res = re.sub('xa{3}x', '!', txt) print(res)

Rezultatul executării codului:

'xx xax xaax !'

Exemplu

În acest exemplu, șablonul de căutare arată astfel: litera 'a' de zece ori:

txt = 'aaa aaaaaaaaaa aaa' res = re.sub('a{10}', '!', txt) print(res)

Rezultatul executării codului:

'aaa ! aaa'

Exemplu

În acest exemplu există următorul șablon: litera 'x', litera 'a' de trei ori sau mai puțin, litera 'x'. Pentru a-l realiza, înaintea cifrei 3 se poate să nu se indice un număr, ci să se pună simplu o virgulă:

txt = 'xx xax xaax xaaax' res = re.sub('xa{,3}x', '!', txt) print(res)

Rezultatul executării codului:

'! ! ! !'

Exemplu

Zero înaintea 3 este de asemenea permis:

txt = 'xx xax xaax xaaax' res = re.sub('xa{0,3}x', '!', txt) print(res)

Rezultatul executării codului:

'! ! ! !'

Probleme practice

Este dat șirul:

txt = 'aa aba abba abbba abbbba abbbbba'

Scrieți o expresie regulată care va găsi șirurile 'abba', 'abbba', 'abbbba' și numai pe acestea.

Este dat șirul:

txt = 'aa aba abba abbba abbbba abbbbba'

Scrieți o expresie regulată care va găsi șirurile de tipul 'aba', în care 'b' apare de mai puțin de 3 ori (inclusiv).

Este dat șirul:

txt = 'aa aba abba abbba abbbba abbbbba'

Scrieți o expresie regulată care va găsi șirurile de tipul 'aba', în care 'b' apare de mai mult de 4 ori (inclusiv).

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge