⊗pyPmRECB 37 of 129 menu

Krøllede parenteser i regulære udtryk i Python

Operatorerne '+', '*', '?' er gode, men med dem kan man ikke angive et specifikt antal gentagelser. I dette tilfælde kommer operatoren {} til undsætning.

Den fungerer som følger: {5} - fem gentagelser, {2,5} – gentages fra to til fem (begge inklusive), {2,} - gentages to gange eller derover. Se eksemplerne:

Eksempel

I dette eksempel ser søgemønsteret sådan ud: bogstavet 'x', bogstavet 'a' en eller to gange, bogstavet 'x':

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

Resultatet af kodeudførelsen:

'xx ! ! xaaax'

Eksempel

I dette eksempel ser søgemønsteret sådan ud: bogstavet 'x', bogstavet 'a' to gange eller derover, bogstavet 'x':

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

Resultatet af kodeudførelsen:

'xx xax ! !'

Eksempel

I dette eksempel ser søgemønsteret sådan ud: bogstavet 'x', bogstavet 'a' tre gange, bogstavet 'x':

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

Resultatet af kodeudførelsen:

'xx xax xaax !'

Eksempel

I dette eksempel ser søgemønsteret sådan ud: bogstavet 'a' ti gange:

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

Resultatet af kodeudførelsen:

'aaa ! aaa'

Eksempel

I dette eksempel er der følgende mønster: bogstavet 'x', bogstavet 'a' tre gange eller derunder, bogstavet 'x'. For at implementere det, kan man udelade tallet foran cifret 3 og blot sætte et komma:

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

Resultatet af kodeudførelsen:

'! ! ! !'

Eksempel

Nul foran 3 er også tilladt:

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

Resultatet af kodeudførelsen:

'! ! ! !'

Praktiske opgaver

Givet en streng:

txt = 'aa aba abba abbba abbbba abbbbba'

Skriv et regulært udtryk, der finder strengene 'abba', 'abbba', 'abbbba' og kun dem.

Givet en streng:

txt = 'aa aba abba abbba abbbba abbbbba'

Skriv et regulært udtryk, der finder strengene af typen 'aba', hvor 'b' forekommer mindre end 3 gange (inklusiv).

Givet en streng:

txt = 'aa aba abba abbba abbbba abbbbba'

Skriv et regulært udtryk, der finder strengene af typen 'aba', hvor 'b' forekommer mere end 4 gange (inklusiv).

Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis