🎯 Saiba o que estudar

Avançado com Treinador a partir de R$ 0,76/dia

Em relação às classes de caracteres POSIX das Expressões Reg...

Próximas questões
Com base no mesmo assunto
Q635326 Sistemas Operacionais

Em relação às classes de caracteres POSIX das Expressões Regulares, associe a segunda coluna de acordo com a primeira e, a seguir, assinale a alternativa com a sequência correta.


 Classe POSIX                   Similar    

1. [:alnum:]                       ( ) [A-Za-z0-9]

2. [:xdigit:]                        ( ) [[0-9A-Fa-f]

3. [:space:]                        ( ) [ \t]

4. [:digit:]

5. [:blank:]

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é A - 1-2-5.

Vamos entender o tema da questão e o porquê dessa alternativa ser a correta. A questão aborda as classes de caracteres POSIX dentro do contexto de Expressões Regulares no Linux. As expressões regulares são poderosas ferramentas de busca e são amplamente usadas em scripts de shell, editores de texto e comandos de linha, como grep.

Classes de caracteres POSIX são uma forma de definir conjuntos de caracteres que compartilham características comuns, tornando as expressões regulares mais legíveis e portáveis. Agora, vamos associar cada classe POSIX na questão com suas equivalências:

  • [:alnum:] - Esta classe corresponde a todos os caracteres alfanuméricos, ou seja, letras e dígitos. Equivale a [A-Za-z0-9].
  • [:xdigit:] - Esta classe abrange todos os caracteres hexadecimais, que incluem os dígitos de 0 a 9 e as letras de A a F (maiúsculas e minúsculas). Equivale a [0-9A-Fa-f].
  • [:space:] - Refere-se a todos os caracteres de espaço em branco, incluindo espaços, tabulações e quebras de linha. Uma versão simplificada é [ \t], mas geralmente inclui mais do que apenas esses dois caracteres.
  • [:digit:] - Corresponde exclusivamente aos dígitos de 0 a 9. Equivale a [0-9].
  • [:blank:] - Esta classe se refere especificamente a espaços e tabulações. Equivale aproximadamente a [ \t].

Agora, analisando a alternativa A - 1-2-5:

  1. 1-[:alnum:] corresponde a [A-Za-z0-9].
  2. 2-[:xdigit:] se relaciona com [0-9A-Fa-f].
  3. 5-[:blank:] está associado a [ \t].

Portanto, a sequência correta é realmente 1-2-5, justificando o gabarito.

Vamos analisar brevemente as alternativas incorretas:

  • B - 4 - 1 - 5: Associa 4-[:digit:] ao lugar errado, pois [:digit:] não corresponde à primeira posição.
  • C - 1 - 4 - 3: Mistura [:digit:] na segunda posição, que está incorreto.
  • D - 2 - 1 - 5: Embora pareça similar, ela troca a ordem entre as duas primeiras classes.
  • E - 2 - 4 - 3: Coloca [:digit:] na posição errada e a terceira classe não é [:space:] como esperado.

Por isso, a alternativa A está correta e bem justificada, com a sequência correta das classes e suas equivalências.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Alternativa correta: a) Alfanuméricos (letras e números), hexadecimais, espaço e tabulação

 

POSIX Description ASCII Unicode Shorthand Java

[:alnum:]Alphanumeric characters[a-zA-Z0-9][\p{L}\p{Nl}
 \p{Nd}]\p{Alnum}

[:alpha:]Alphabetic characters[a-zA-Z]\p{L}\p{Nl}\p{Alpha}

[:ascii:]ASCII characters[\x00-\x7F]\p{InBasicLatin}\p{ASCII}

[:blank:]Space and tab[ \t][\p{Zs}\t]\h\p{Blank}

[:cntrl:]Control characters[\x00-\x1F\x7F]\p{Cc}\p{Cntrl}

[:digit:]Digits[0-9]\p{Nd}\d\p{Digit}

[:graph:]Visible characters (anything except spaces and control characters)[\x21-\x7E][^\p{Z}\p{C}]\p{Graph}

[:lower:]Lowercase letters[a-z]\p{Ll}\l\p{Lower}

[:print:]Visible characters and spaces (anything except control characters)[\x20-\x7E]\P{C}\p{Print}

[:punct:]Punctuation and symbols.[!"\#$%&'()*+,
\-./:;?@\[
\\\]^_`{|}~]\p{P}\p{Punct}

[:space:]All whitespace characters, including line breaks[ \t\r\n\v\f][\p{Z}\t\r\n\v\f]\s\p{Space}

[:upper:]Uppercase letters[A-Z]\p{Lu}\u\p{Upper}

[:word:]Word characters (letters, numbers and underscores)[A-Za-z0-9_][\p{L}\p{Nl}
 \p{Nd}\p{Pc}]\w

[:xdigit:]Hexadecimal digits[A-Fa-f0-9][A-Fa-f0-9]\p{XDigit}

Fonte: http://www.regular-expressions.info/posixbrackets.html

alnum = numeros + letras

xdigit = hexadecimais

space = caracteres nao imprimiveis -- \\s

digit = numero

blank = espaço em branco (espaço e tabulação)

http://www.bosontreinamentos.com.br/linux/certificacao-lpic-1/expressoes-regulares-02-classes-de-caracteres-e-conjuntos-posix-linux/

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo