⊗pyPmRERO 34 of 129 menu

Operadores de repetição de caracteres em regex

Há situações em que é necessário indicar que um caractere se repete um determinado número de vezes. Se o número exato de repetições é desconhecido, pode-se simplesmente escrevê-lo várias vezes - 'aaaa'. Mas o que fazer se for preciso dizer algo como: repetir uma ou mais vezes?

Para isso existem os operadores (quantificadores) de repetição: o sinal de mais + (uma ou mais vezes), o asterisco * (zero ou mais vezes) e o ponto de interrogação ? (zero ou uma vez). Esses operadores atuam sobre o caractere que os precede.

Vamos ver o funcionamento desses operadores com exemplos.

Exemplo

Vamos encontrar todas as substrings pelo padrão letra 'x', letra 'a' uma ou mais vezes, letra 'x':

txt = 'xx xax xaax xaaax xbx' res = re.sub('xa+x', '!', txt) print(res)

Resultado da execução do código:

'xx ! ! ! xbx'

Exemplo

Vamos encontrar todas as substrings pelo padrão letra 'x', letra 'a' zero ou mais vezes, letra 'x':

txt = 'xx xax xaax xaaax xbx' res = re.sub('xa*x', '!', txt) print(res)

Resultado da execução do código:

'! ! ! ! xbx'

Exemplo

Vamos encontrar todas as substrings pelo padrão letra 'x', letra 'a' zero ou uma vez, letra 'x':

txt = 'xx xax xaax xbx' res = re.sub('xa?x', '!', txt) print(res)

Resultado da execução do código:

'! ! xaax xbx'

Problemas práticos

Dada a string:

txt = 'aa aba abba abbba abca abea'

Escreva uma expressão regular que encontre as strings 'aba', 'abba', 'abbba' seguindo o padrão: letra 'a', letra 'b' qualquer número de vezes, letra 'a'.

Dada a string:

txt = 'aa aba abba abbba abca abea'

Escreva uma expressão regular que encontre as strings 'aa', 'aba', 'abba', 'abbba' seguindo o padrão: letra 'a', letra 'b' qualquer número de vezes (incluindo zero vezes), letra 'a'.

Dada a string:

txt = 'aa aba abba abbba abca abea'

Escreva uma expressão regular que encontre as strings 'aa', 'aba' seguindo o padrão: letra 'a', letra 'b' uma vez ou nenhuma, letra 'a'.

Dada a string:

txt = 'aa aba abba abbba abca abea'

Escreva uma expressão regular que encontre as strings 'aa', 'aba', 'abba', 'abbba', sem capturar 'abca' e 'abea'.

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