⊗pyPmREInr 33 of 129 menu

Wprowadzenie do wyrażeń regularnych w Pythonie

Wyrażenia regularne to polecenia do zaawansowanego wyszukiwania i zamiany (lub po prostu wyszukiwania). Pozwalają one robić bardzo ciekawe rzeczy, ale niestety są dość trudne do opanowania.

Aby rozpocząć pracę z wyrażeniami regularnymi w Pythonie, musimy zaimportować specjalny moduł re:

import re

Moduł re zawiera metody przeznaczone do pracy z wyrażeniami regularnymi. Wyrażenie regularne przedstawia zestaw poleceń i składa się z dwóch typów znaków: z tych, które oznaczają same siebie oraz z znaków-poleceń, które nazywane są znakami specjalnymi.

Zapoznanie się z wyrażeniami regularnymi lepiej rozpocząć na przykładzie metody sub, która jest używana do zamian w ciągu znaków. Pierwszym parametrem metoda przyjmuje co zamienić, drugim - na co zamienić. W trzecim parametrze określamy ciąg, w którym należy dokonać zamiany. W czwartym opcjonalnym parametrze ustawiamy liczbę zamian. Najprostsza zamiana za pomocą tej metody będzie wyglądać tak:

res = re.sub('a', '!', 'bab') print(res) # wypisze 'b!b'

Jak zauważyłeś, w wyrażeniu regularnym litery oznaczają same siebie. To samo dotyczy również cyfr. Zamieńmy cyfrę 2 na !:

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

A kropka jest znakiem specjalnym i oznacza dowolny znak. W następnym przykładzie znajdźmy podciąg według takiego wzorca: litera 'x', następnie dowolny znak, potem znowu litera 'x':

res = re.sub('x.x', '!', 'xax eee') print(res) # wypisze '! eee'

Dany jest ciąg:

txt = 'ahb acb aeb aeeb adcb axeb'

Napisz wyrażenie regularne, które znajdzie ciągi 'ahb', 'acb', 'aeb' według wzorca: litera 'a', dowolny znak, litera 'b'.

Dany jest ciąg:

txt = 'aba aca aea abba adca abea'

Napisz wyrażenie regularne, które znajdzie ciągi 'abba', 'adca', 'abea' według wzorca: litera 'a', 2 dowolne znaki, litera 'a'.

Dany jest ciąg:

txt = 'aba aca aea abba adca abea'

Napisz wyrażenie regularne, które znajdzie ciągi 'abba' i 'abea', nie wychwytując 'adca'.

Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć