^ ( [ \ w ] \ . ? ) + @ ( [ \ w ] + \ . a ) + ( [ a - z ] { 2 , 4 } ) + $ Considerando a expressão regular (regex) precedente, utilizada para validação de email, julgue os itens a seguir. I Na expressão, as âncoras ^ e $ definem, respectivamente, que nada deve vir antes e nada deve vir depois. II Há três classes de caracteres presentes na expressão. III O trecho da expressão que contêm . ? define que o caractere literal ponto pode aparecer 0 ou 1 vez. Assinale a opção correta.
- A)Nenhum item está certo.
Errada, porque os três itens apresentados estão corretos.
- B)Apenas o item I está certo.
Errada, porque o item II e o item III também estão certos.
- C)Apenas o item II está certo.
Errada, porque o item I e o item III também estão certos.
- D)Apenas o item III está certo.
Errada, porque o item I e o item II também estão certos.
- E)Todos os itens estão certos.
Certa, pois as âncoras, as classes de caracteres e o uso de \.? foram interpretados corretamente.
Gabarito: E
Essa questão mistura a leitura literal da regex com a função de cada símbolo. As âncoras ^ e $ servem para “travar” a expressão: ^ exige que a correspondência comece no início do texto e $ exige que termine no fim, então nada pode aparecer antes ou depois do padrão. Em prova, isso costuma aparecer como validação completa de email, para evitar que a pessoa digite “lixo@site.comqualquercoisa” e a máquina aceite sem reclamar. O item II também está correto porque há três classes de caracteres na expressão: [\w\. ?], [\w] e [a-z]. Classe de caracteres é o trecho entre colchetes, usado para aceitar um conjunto de símbolos em uma posição específica. Aqui a banca quis testar se você identifica os blocos entre colchetes, não apenas os símbolos isolados. No item III, o trecho com \.? indica ponto literal escapado com barra invertida, seguido do quantificador ?, que significa “zero ou uma vez”. Ou seja, o ponto pode aparecer ou não, no máximo uma vez. Isso é clássico em regex: a barra invertida tira o significado especial do ponto, e o ? limita a repetição. Por isso, o gabarito é E: os três itens estão corretos. Em linguagem de concurso, é aquele combo básico de regex que separa quem lê a expressão com calma de quem se assusta com os colchetes e foge correndo.