⊗ppPmRgOC 241 of 447 menu

Comanda 'sau' în expresiile regulate PHP

În această lecție vom analiza comanda |, care reprezintă o variantă mult mai puternică a SAU în comparație cu comanda []. Această comandă permite împărțirea expresiei regulate în mai multe părți. În acest caz, ceea ce este căutat poate să se potrivească fie cu o parte a expresiei regulate, fie cu alta. Să vedem câteva exemple.

Exemplul

În acest exemplu, șablonul de căutare este: trei litere 'a' sau trei litere 'b':

<?php $str = 'aaa bbb abb'; $res = preg_replace('#a{3}|b{3}#', '!', $str); ?>

Ca rezultat, în variabilă se va scrie următorul text:

'! ! abb'

Exemplul

În acest exemplu, șablonul de căutare este: trei litere 'a' sau de la 1 și mai mult litere 'b':

<?php $str = 'aaa bbb bbbb bbbbb axx'; $res = preg_replace('#a{3}|b+#', '!', $str); ?>

Ca rezultat, în variabilă se va scrie următorul text:

'! ! ! ! axx'

Exemplul

În acest exemplu, șablonul de căutare este: una sau mai multe litere sau trei cifre:

<?php $str = 'a ab abc 1 12 123'; $res = preg_replace('#[a-z]+|\d{3}#', '!', $str); ?>

Ca rezultat, în variabilă se va scrie următorul text:

'! ! ! 1 12 !'

Exemplul

Bara verticală poate împărți expresia regulată nu în două părți, ci în orice număr de părți:

<?php $str = 'aaa bbb ccc ddd'; $res = preg_replace('#a+|b+|c+#', '!', $str); ?>

Ca rezultat, în variabilă se va scrie următorul text:

'! ! ! ddd'

Exemplul

Dacă bara verticală se află în interiorul parantezelor rotunde, atunci 'sau' funcționează doar în interiorul acestor paranteze. De exemplu, să găsim șirurile conform următorului șablon: la început se află fie 'a', fie 'b' de una sau mai multe ori, iar apoi două litere 'x':

<?php $str = 'axx bxx bbxx exx'; $res = preg_replace('#(a|b+)xx#', '!', $str); ?>

Ca rezultat, în variabilă se va scrie următorul text:

'! ! ! exx'

Probleme practice

Este dat șirul:

<?php $str = 'aeeea aeea aea axa axxa axxxa'; ?>

Scrieți o expresie regulată care va găsi șirurile conform șablonului: la margini sunt literele 'a', iar între ele - fie litera 'e' de orice număr de ori fie litera 'x' de orice număr de ori.

Este dat șirul:

<?php $str = 'aeeea aeea aea axa axxa axxxa'; ?>

Scrieți o expresie regulată care va găsi șirurile conform șablonului: la margini sunt literele 'a', iar între ele - fie litera 'e' de două ori fie litera 'x' de orice număr de ori.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge