19.11
A língua brasileira é rica em caractecteres acentuados, e isso é uma questão que os metacaracteres não tratam especificamente quando necessário criar expressões regulares, sendo necessário utilizar de um meio alternativo, que nada mais são do que as classes de caracteres providas pelo padrão POSIX.
O POSIX é um padrão internacional que define normas para garantir a portabilidade do código-fonte de um programa a partir de um sistema operacional. Hã!? Deixe-me tentar explicar de uma outra forma já utilizando as classes.
O uso das classes de caracteres levam em conta a localidade do sistema operacional, seguindo algumas premissas como o idioma utilizado no sistema operacional, e isso só ocorre porque o padrão POSIX da suporte a portabilidade de idiomas.
Lista de classes:
- [:digit:] Dígitos de 0 até 9
- [:alnum:] Caracteres alfanuméricos de 0 até 9 ou A até Z ou a até z.
- [:alpha:] Caracteres alfabéticos de A até Z ou a até z.
- [:blank:] Caracteres de espaço e tabulação.
- [:xdigit:] Dígitos hexadecimais
- [:punct:] Símbolos de pontuação . , ” ‘ ? ! ; :
- [:print:] Todos os caracteres que podem ser impressos.
- [:space:] Caracteres de espaço.
- [:graph:] Todos os caracteres impressos, menos espaço.
- [:upper:] Caracteres alfabéticos maiúsculos de A até Z.
- [:lower:] Caracteres minúsculos de a até z.
- [:cntrl:] Caracteres de control.
Exemplo
Imaginemos que utilizariamos a classe [:lower:] em um sistema operacional com o idioma em inglês, isso não seria de muito uso para expressões regulares com caracteres acentuados, sendo que a classe seria equivalente a [a-z]. Agora utilizando a mesma classe [:lower:] com idioma em português, teriamos o equivalente a [a-záãâàêéóúçõ...]. Um fato observável é que isso serve para as outras classes de caracteres. (lista de metacaracteres)
Não há comentários ainda.
Deixe seu comentário