Questão nº 46

Questão de Tecnologia da Informação · FGV TRF1 2024 (nº 46)

FGV2024Analista Judiciário - Análise de DadosTecnologia da Informação
Gabarito: Ever comentário ↓

Considere o seguinte código em JavaScript:
const regexp = /(f+)(\d?)(t*)/g;
const str = 'trf1trf2trf3trf4trf5';
const array = [...str.matchAll(regexp)];
console.log(array.length)
Ao ser executado, o código acima imprime na saída padrão do console:

Resposta comentada

Gabarito Alternativa E

O método matchAll() em JavaScript, quando usado com uma expressão regular que possui a flag global (g), encontra todas as ocorrências não sobrepostas da expressão na string. Ele retorna um iterador de objetos de correspondência, que pode ser convertido em um array usando o operador ... (spread).

  • (A) Incorreta: Esta seria a resposta se a flag g estivesse ausente na expressão regular ou se fosse usado o método match() sem a flag g, que retorna apenas a primeira ocorrência. A armadilha aqui é não considerar o comportamento global de matchAll com a flag g.
  • (B) Incorreta: Há mais de 2 ocorrências que se encaixam no padrão.
  • (C) Incorreta: Há mais de 3 ocorrências que se encaixam no padrão.
  • (D) Incorreta: Há mais de 4 ocorrências que se encaixam no padrão.
  • (E) Correta: A expressão regular /(f+)(\d?)(t*)/g busca por:
    • (f+): Uma ou mais letras 'f'.
    • (\d?): Opcionalmente, um dígito.
    • (t*): Opcionalmente, zero ou mais letras 't'.
    • /g: A flag global garante que todas as correspondências sejam encontradas.

Na string 'trf1trf2trf3trf4trf5':

  1. f1 é uma correspondência (f+, 1, t* vazio).
  2. f2 é uma correspondência (f+, 2, t* vazio).
  3. f3 é uma correspondência (f+, 3, t* vazio).
  4. f4 é uma correspondência (f+, 4, t* vazio).
  5. f5 é uma correspondência (f+, 5, t* vazio).

Existem exatamente 5 ocorrências que se encaixam no padrão, e matchAll com a flag g as encontra todas. O array.length será 5.

Fonte: FGV TRF1 2024 Analista Judiciário - Análise de Dados (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho