⊗pyPmREInr 33 of 129 menu

Увядзенне ў рэгулярныя выразы ў Python

Рэгулярныя выразы - гэта каманды для складанага пошуку і замены (або проста пошуку). Яны дазваляюць рабіць вельмі цікавыя рэчы, але, на жаль, даволі цяжкія ў асваенні.

Каб пачаць работу з рэгулярнымі выразамі ў Python, нам трэба імпартаваць спецыяльны модуль re:

import re

Модуль re уключае ў сябе метады, прызначаныя для работы з рэгулярнымі выразамі. Рэгулярны выраз уяўляе сабой набор каманд і складаецца з двух тыпаў сімвалаў: з тых, якія абазначаюць самі сябе і з сімвалаў-каманд, якія называюцца спецыяльныя сімвалы.

Знаёмства з рэгулярнымі выразамі лепш пачаць на прыкладзе метаду sub, які выкарыстоўваецца для замен у радку. Першым параметрам метад прымае што мяняць, другім - на што мяняць. У трэцім параметры паказваем радок, у якім трэба зрабіць замену. У чацвёртым неабавязковым параметры задаем колькасць замен. Самая простая замена з дапамогай гэтага метаду будзе выглядаць вось так:

res = re.sub('a', '!', 'bab') print(res) # выведзе 'b!b'

Як вы заўважылі, у рэгулярным выражэнні літары абазначаюць самі сябе. Toе ж самае адносіцца і да лічбаў. Давайце замянім лічбу 2 на !:

res = re.sub('2', '!', '12abc3') print(res) # выведзе '1!abc3'

А вось кропка з'яўляецца спецыяльным сімвалам і абазначае любы сімвал. У наступным прыкладзе давайце знойдзем падрадок па такому шаблоне: літара 'x', затым любы сімвал, затым зноў літара 'x':

res = re.sub('x.x', '!', 'xax eee') print(res) # выведзе '! eee'

Дадзены радок:

txt = 'ahb acb aeb aeeb adcb axeb'

Напішыце рэгулярку, якая знойдзе радкі 'ahb', 'acb', 'aeb' па шаблоне: літара 'a', любы сімвал, літара 'b'.

Дадзены радок:

txt = 'aba aca aea abba adca abea'

Напішыце рэгулярку, якая знойдзе радкі 'abba', 'adca', 'abea' па шаблоне: літара 'a', 2 любыя сімвалы, літара 'a'.

Дадзены радок:

txt = 'aba aca aea abba adca abea'

Напішыце рэгулярку, якая знойдзе радкі 'abba' і 'abea', не захапіўшы 'adca'.

Беларуская
AfrikaansAzərbaycanБългарскиবাংলাČeštinaDanskDeutschΕλληνικά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
Мы выкарыстоўваем cookie для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць