⊗ppPmRgCB 228 of 447 menu

Chaves em expressões regulares PHP

Os operadores +, *, ? são úteis, no entanto, com eles não é possível especificar um número exato de repetições. Neste caso, o operador {} virá em seu auxílio.

Ele funciona da seguinte forma: {5} - cinco repetições, {2,5} - repete de duas a cinco vezes (ambos inclusivos), {2,} - repete duas vezes ou mais.

Exemplo

Neste exemplo, o padrão de busca é o seguinte: letra 'x', letra 'a' uma ou duas vezes, letra 'x':

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

Como resultado, será armazenado na variável o seguinte:

'xx ! ! xaaax'

Exemplo

Neste exemplo, o padrão de busca é o seguinte: letra 'x', letra 'a' duas vezes ou mais, letra 'x':

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

Como resultado, será armazenado na variável o seguinte:

'xx xax ! !'

Exemplo

Neste exemplo, o padrão de busca é o seguinte: letra 'x', letra 'a' três vezes, letra 'x':

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

Como resultado, será armazenado na variável o seguinte:

'xx xax xaax !'

Exemplo

Neste exemplo, o padrão de busca é o seguinte: letra 'a' dez vezes:

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

Como resultado, será armazenado na variável o seguinte:

'aaa ! aaa'

Exemplo

Neste exemplo, o autor do código queria o seguinte padrão: letra 'x', letra 'a' três vezes ou menos, letra 'x', mas, infelizmente, isso - {,3} - não funciona. É necessário especificar explicitamente:

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

Como resultado, será armazenado na variável o seguinte:

'xx ! ! !'

Exemplo

Zero também é permitido:

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

Como resultado, será armazenado na variável o seguinte:

'! ! ! !'

Problemas práticos

Dada a string:

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

Escreva uma expressão regular que encontre as strings 'abba', 'abbba', 'abbbba' e apenas elas.

Dada a string:

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

Escreva uma expressão regular que encontre strings do tipo 'aba', nas quais 'b' aparece menos de três vezes (inclusive).

Dada a string:

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

Escreva uma expressão regular que encontre strings do tipo 'aba', nas quais 'b' aparece mais de quatro vezes (inclusive).

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar