⊗pyPmREOC 51 of 129 menu

Каманда 'ці' ў рэгулярных выразах Python

Каманда '|', якая представляе сабой больш магутны варыянт 'ці' у параўнанні з камандай [ ]. Гэтая каманда дазваляе падзяліць рэгулярку на некалькі часткаў. Пры гэтым шукаемае можа трапіць альбо пад адну частку рэгуляркі, альбо пад іншую. Давайце паглядзім на прыкладах.

Прыклад

У гэтым прыкладзе шаблон пошуку такі: тры літары 'a' ці тры літары 'b':

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

Вынік выканання кода:

'! ! abb'

Прыклад

У гэтым прыкладзе шаблон пошуку такі: тры літары 'a' ці ад 1 і больш літар 'b':

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

Вынік выканання кода:

'! ! ! ! axx'

Прыклад

У гэтым прыкладзе шаблон пошуку такі: адна ці больш літары ці тры лічбы:

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

Вынік выканання кода:

'! ! ! 1 12 !'

Прыклад

Вертыкальная рыса можа дзяліць рэгулярку не на дзве часткі, а на любую колькасць часткаў:

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

Вынік выканання кода:

'! ! ! ddd'

Прыклад

Калі вертыкальная рыса стаіць унутры круглых дужак, то 'ці' працуе толькі ўнутры гэтых дужак.

Для прыкладу давайце знойдзем радкі па наступным шаблоне: у пачатку стаіць ці 'a', ці 'b' адзін ці больш раз, а потым дзве літары 'x':

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

Вынік выканання кода:

'! ! ! exx'

Практычныя задачы

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

txt = 'aeeea aeea aea axa axxa axxxa'

Напішыце рэгулярку, якая знойдзе радкі па шаблоне: па краях стаяць літары 'a', а паміж імі - ці літара 'e' любую колькасць разоў ці літара 'x' любую колькасць разоў.

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

txt = 'aeeea aeea aea axa axxa axxxa'

Напішыце рэгулярку, якая знойдзе радкі па шаблоне: па краях стаяць літары 'a', а паміж імі - ці літара 'e' два разы ці літара 'x' любую колькасць разоў.

Беларуская
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 для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць