Voltar
Aprender

O que são Expressões Regulares?

As expressões regulares (regex) são padrões que descrevem conjuntos de sequências de caracteres. São usadas para validar, procurar e manipular texto de forma eficiente.

Neste contexto dos gelados, usamos regex para definir quais combinações de componentes são válidas!

Símbolos das Expressões Regulares

|OU (alternativa)

Permite escolher entre opções. Ex: CONE|COPO significa CONE ou COPO.

+Uma ou mais repetições

O elemento deve aparecer pelo menos uma vez. Ex: BOLA+ significa 1 ou mais bolas.

*Zero ou mais repetições

O elemento pode não aparecer ou aparecer várias vezes. Ex: TOPPING* significa 0, 1, 2... toppings.

?Opcional (0 ou 1)

O elemento é opcional. Ex: TOPPING? significa com ou sem topping.

{n,m}Intervalo de repetições

Define mínimo e máximo. Ex: BOLA{1,3} significa 1 a 3 bolas.

O que são Autómatos Finitos?

Um autómato finito é uma máquina abstrata que processa sequências de símbolos, transitando entre estados conforme lê cada símbolo.

🔵 Estados

Representam situações ou fases do processamento. Desenhados como círculos.

➡️ Transições

Setas que ligam estados, etiquetadas com os símbolos que provocam a mudança.

▶️ Estado Inicial

Onde o autómato começa. Indicado por uma seta de entrada.

⭕ Estados Finais

Estados de aceitação. Desenhados com círculo duplo.

Dica!

Se o autómato terminar num estado final após processar toda a sequência, o gelado é válido!

As Regras do Gelado

📋 Regra Inicial

(CONE|COPO) BOLA+ TOPPING?
  • ✅ O gelado começa com CONE ou COPO
  • ✅ Tem obrigatoriamente pelo menos uma bola
  • ✅ Pode ter no máximo um topping (opcional)

📋 Regra Atualizada

(CONE|COPO) BOLA{1,3} TOPPING*
  • ✅ O gelado começa com CONE ou COPO
  • ✅ Tem entre 1 a 3 bolas (por estabilidade)
  • ✅ Pode ter qualquer número de toppings