⊗ppPmRgCB 228 of 447 menu

Nawiasy klamrowe w wyrażeniach regularnych PHP

Operatory +, *, ? są dobre, jednak za ich pomocą nie można określić konkretnej liczby powtórzeń. W tym przypadku z pomocą przychodzi operator {}.

Działa on w następujący sposób: {5} - pięć powtórzeń, {2,5} - powtarza się od dwóch do pięciu (oba włącznie), {2,} - powtarza się dwa lub więcej razy.

Przykład

W tym przykładzie wzorzec wyszukiwania wygląda tak: litera 'x', litera 'a' jeden lub dwa razy, litera 'x':

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{1,2}x#', '!', $str); ?>

W rezultacie do zmiennej zostanie zapisane następujące:

'xx ! ! xaaax'

Przykład

W tym przykładzie wzorzec wyszukiwania wygląda tak: litera 'x', litera 'a' dwa razy lub więcej, litera 'x':

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{2,}x#', '!', $str); ?>

W rezultacie do zmiennej zostanie zapisane następujące:

'xx xax ! !'

Przykład

W tym przykładzie wzorzec wyszukiwania wygląda tak: litera 'x', litera 'a' trzy razy, litera 'x':

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{3}x#', '!', $str); ?>

W rezultacie do zmiennej zostanie zapisane następujące:

'xx xax xaax !'

Przykład

W tym przykładzie wzorzec wyszukiwania wygląda tak: litera 'a' dziesięć razy:

<?php $str = 'aaa aaaaaaaaaa aaa'; $res = preg_replace('#a{10}#', '!', $str); ?>

W rezultacie do zmiennej zostanie zapisane następujące:

'aaa ! aaa'

Przykład

W tym przykładzie autor kodu chciał taki wzorzec: litera 'x', litera 'a' trzy razy i mniej, litera 'x', ale niestety, takie - {,3} - nie działa. Należy podać jawnie:

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{1,3}x#', '!', $str); ?>

W rezultacie do zmiennej zostanie zapisane następujące:

'xx ! ! !'

Przykład

Zero też jest dozwolone:

<?php $str = 'xx xax xaax xaaax'; $res = preg_replace('#xa{0,3}x#', '!', $str); ?>

W rezultacie do zmiennej zostanie zapisane następujące:

'! ! ! !'

Zadania praktyczne

Dany jest ciąg:

<?php $str = 'aa aba abba abbba abbbba abbbbba'; ?>

Napisz wyrażenie regularne, które znajdzie ciągi 'abba', 'abbba', 'abbbba' i tylko je.

Dany jest ciąg:

<?php $str = 'aa aba abba abbba abbbba abbbbba'; ?>

Napisz wyrażenie regularne, które znajdzie ciągi typu 'aba', w których 'b' występuje mniej niż trzy razy (włącznie).

Dany jest ciąg:

<?php $str = 'aa aba abba abbba abbbba abbbbba'; ?>

Napisz wyrażenie regularne, które znajdzie ciągi typu 'aba', w których 'b' występuje więcej niż cztery razy (włącznie).

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ć