⊗jsSpRERO 97 of 294 menu

Operadores de repetição de caracteres em expressões regulares

Há situações em que queremos indicar que um caractere se repete um determinado número de vezes. Se sabemos o número exato de repetições, podemos simplesmente escrevê-lo várias vezes - /aaaa/. Mas o que fazer se quisermos dizer algo assim: repetir uma ou mais vezes?

Para isso, existem 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). Estes operadores atuam sobre o caractere que está antes deles.

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':

let str = 'xx xax xaax xaaax xbx'; let res = str.replace(/xa+x/g, '!');

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

'xx ! ! ! xbx'

Exemplo

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

let str = 'xx xax xaax xaaax xbx' let res = str.replace(/xa*x/g, '!');

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

'! ! ! ! xbx'

Exemplo

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

let str = 'xx xax xaax xbx'; let res = str.replace(/xa?x/g, '!');

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

'! ! xaax xbx'

Problemas práticos

Dada a string:

let str = '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:

let str = '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 (inclusive nenhuma vez), letra 'a'.

Dada a string:

let str = '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:

let str = '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