Em relação às classes de caracteres POSIX das Expressões Reg...
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:]
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-[:alnum:] corresponde a [A-Za-z0-9].
- 2-[:xdigit:] se relaciona com [0-9A-Fa-f].
- 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