⊗pyPmREOC 51 of 129 menu

Команда 'или' у регуларним изразима Пајтона

Команда '|', која представља снажнију варијанту 'или' у поређењу са командом [ ]. Ова команда омогућава да се регуларни израз подели на неколико делова. При томе тражени део може да одговара или једном делу регуларног израза, или другом. Погледајмо на примерима.

Пример

У овом примеру шаблон за претрагу је: три слова '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ščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј