⊗pyPmREOC 51 of 129 menu

De 'of'-opdracht in reguliere expressies van Python

De opdracht '|', die een krachtigere variant van 'of' vertegenwoordigt in vergelijking met de opdracht [ ]. Deze opdracht maakt het mogelijk om de reguliere expressie in meerdere delen te splitsen. Hierbij kan het gezochte ofwel onder het ene deel van de reguliere expressie vallen, ofwel onder het andere. Laten we naar voorbeelden kijken.

Voorbeeld

In dit voorbeeld is het zoekpatroon als volgt: drie letters 'a' of drie letters 'b':

txt = 'aaa bbb abb' res = re.sub('a{3}|b{3}', '!', txt) print(res)

Resultaat van de code-uitvoering:

'! ! abb'

Voorbeeld

In dit voorbeeld is het zoekpatroon als volgt: drie letters 'a' of van 1 of meer letters 'b':

txt = 'aaa bbb bbbb bbbbb axx' res = re.sub('a{3}|b+', '!', txt) print(res)

Resultaat van de code-uitvoering:

'! ! ! ! axx'

Voorbeeld

In dit voorbeeld is het zoekpatroon als volgt: een of meer letters of drie cijfers:

txt = 'a ab abc 1 12 123' res = re.sub('[a-z]+|\d{3}', '!', txt) print(res)

Resultaat van de code-uitvoering:

'! ! ! 1 12 !'

Voorbeeld

De verticale streep kan de reguliere expressie niet alleen in twee delen verdelen, maar in elk willekeurig aantal delen:

txt = 'aaa bbb ccc ddd' res = re.sub('a+|b+|c+', '!', txt) print(res)

Resultaat van de code-uitvoering:

'! ! ! ddd'

Voorbeeld

Als de verticale streep binnen ronde haakjes staat, dan werkt 'of' alleen binnen die haakjes.

Laten we als voorbeeld strings vinden volgens het volgende patroon: aan het begin staat ofwel 'a', ofwel 'b' een of meer keer, en daarna twee letters 'x':

txt = 'axx bxx bbxx exx' res = re.sub('(a|b+)xx', '!', txt) print(res)

Resultaat van de code-uitvoering:

'! ! ! exx'

Praktische opdrachten

Gegeven een string:

txt = 'aeeea aeea aea axa axxa axxxa'

Schrijf een reguliere expressie die strings vindt volgens het patroon: aan de randen staan letters 'a', en daartussen - ofwel de letter 'e' een willekeurig aantal keren of de letter 'x' een willekeurig aantal keren.

Gegeven een string:

txt = 'aeeea aeea aea axa axxa axxxa'

Schrijf een reguliere expressie die strings vindt volgens het patroon: aan de randen staan letters 'a', en daartussen - ofwel de letter 'e' twee keer of de letter 'x' een willekeurig aantal keren.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren