Como dito, as expressões regulares consideram a Tabela ASCII e, portanto, consideram as diferenças
entre localidades. Isso resulta em grandes diferenças realizadas em buscas nos documentos escritos
na Língua Portuguesa e Inglesa. O alfabeto norte-americano não tem caracteres acentuados como
‘áéóõç’, ‘áéíóú’ ou ‘ÁÉÍÓÚ’. Logo, a instrução ‘[a-z]’ não retornaria os caracteres minúsculos.
Para a nossa sorte, alguns artifícios foram criados para auxiliar o trabalho com listas. Sobretudo,
quando pensamos na localidade do sistema, as classes denominadas POSIX operam como um
padrão para determinar interfaces comuns entre sistemas operacionais. Embora sejam declaradas
entre dois pontos e colchetes, é importante lembrar que esses colchetes não se referem às listas.
Vejamos algumas:
[:upper:] – busca letras maiúsculas, equivalente a [A-Z]; [:lower:] – busca letras minúsculas, equivalente a [a-z]; [:alpha:] – busca letras maiúsculas e minúsculas, equivalente a [A-Za-z]; [:alnum:] – busca letras e números, equivalente a [A-Za-z0-9]; [:digit:] – busca letras e números, equivalente a [0-9]; [:punct:] – busca sinais de pontuação, equivalente a [.’ !?: … ].Para contextualizar a utilização de algumas dessas classes, pensemos em uma nuvem de palavras na
qual os termos mais comuns são apresentados com maior destaque. A contagem das palavras
apresentadas exige que todas as pontuações sejam removidas e com isso a instrução ‘[[:punct:]]’
seria o suficiente para localizar todas as ocorrências e então removê-las. Outra forma de atender a
solução seria buscar todos os caracteres alfanuméricos, ou seja, letras e números e, então, negar a
lista dessa forma ‘[^[:alnum:]]’.
Embora existam outras classes, nesta Disciplina, iremos nos concentrar nas que foram apresentadas
até agora. Você perceberá que elas são suficientes para cobrir grande parte das combinações e para
iniciar suas REGEX de forma muito ampla. Além disso, esse é um convite para que você acesse os
Materiais Complementares e aprofunde o conhecimento no assunto.