Questão nº 44
Questão de Tecnologia da Informação · FCC TRF4 2019 (nº 44)
FCC2019Analista Judiciário - Área Apoio Especializado - Especialidade Sistemas de Tecnologia da InformaçãoTecnologia da Informação
Gabarito: Aver comentário ↓
Considere o fragmento de programa JavaScript abaixo.
var str = "123456789";
var p = /[^5-7]/g;
var resultado = str.match(p);
A variável resultado vai conter
- A1,2,3,4,8,9 (alternativa correta)
- B5,6,7
- C5,7
- D1,2,3,4,6,8,9
- E3
Resposta comentada
Gabarito Alternativa A
Expressões regulares (regex) são padrões usados para encontrar e manipular texto. Em JavaScript, o método match() busca por esses padrões em uma string, e uma classe de caracteres negada [^...] encontra qualquer caractere que não esteja listado dentro dos colchetes.
- (A) Correta: O padrão
[^5-7]significa "qualquer caractere que não seja '5', '6' ou '7'". A flagg(global) garante que todas as ocorrências sejam encontradas. Na string "123456789", os caracteres que não são '5', '6' ou '7' são '1', '2', '3', '4', '8' e '9'. - (B) Incorreta: Esta alternativa representa os caracteres que estão na faixa
5-7. A armadilha é ignorar o^dentro dos colchetes, que nega a classe de caracteres. Se o padrão fosse/[5-7]/g(sem o^), esta seria a resposta correta. - (C) Incorreta: Não corresponde ao resultado da expressão regular.
- (D) Incorreta: Inclui o '6', que faz parte da faixa negada
5-7e, portanto, não deveria ser incluído. - (E) Incorreta: Apenas um dos caracteres que correspondem ao padrão.
Fonte: FCC TRF4 2019 Analista Judiciário - Área Apoio Especializado - Especialidade Sistemas de Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.