Ir para o conteúdo
quetzyg

[Dúvida] RegEx - Inclusão de caracteres acentuados

Mensagens Recomendadas

quetzyg    0
quetzyg

Viva!

Como o título indica, estou com dúvidas em como incluir caracteres acentuados (ã, ç, é, á, ...) numa expressão regular.

Ou seja, se eu uso o típico [a-zA-Z], como por exemplo: ^([a-zA-Z]{1,})$' e procuro por joao, há uma ocorrência, mas se procuro por joão já não há.

Andei pelo fórum e pelo google a procurar problemas similares, mas não encontro nada que me ajude. :bored:

O objectivo, é validar um campo nome de um formulário, de forma a que os utilizadores não tenham de retirar acentos aos seus nomes  para se poderem registar.

Alguém com ideias?

Bem haja,

Quetzy Garcia

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Kyu    0
Kyu

não te garanto que funcione.. mas experimenta da mesma forma que estás a pôr A-Z, pôr os caracteres acentuados também segundo a ordem da tabela ascii (http://www.asciitable.com/)

por exemplo de 130 a 133 são todos caracteres válidos por isso com esses a expressão seria [a-zA-Zé-à] ...

não me ocorre maneira melhor (nem sei se esta funciona, mas em princípio não vejo pq não)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
quetzyg    0
quetzyg

Eu esqueci-me de mencionar, mas já tinha experimentado da forma como sugeriste (embora não totalmente igual), mas não tinha funcionado.

Reparei também, que as tabelas ascii extendidas variam. Talvez seja disso... :hmm:

Como podes ver, os códigos ascii extendidos desta página, nada têm a ver com os desta.

Pelos testes que estive a fazer, a melhor forma de apanhar os caracteres especiais, é esta: [a-zA-ZÀ-ÿ].

Obrigado pela ajuda. :P

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Saco    0
Saco

[quote author=quetzyg link=topic=12887.msg117380#msg117380 date=1182453643

Como podes ver, os códigos ascii extendidos desta página, nada têm a ver com os desta.

Por acaso têm tudo a ver, estás é a olhar para a coluna errada. É que o primeiro link que mostraste são códigos HTML e não ASCII propriamente ditos. Vê a coluna HTML (ou Dec) do segundo link e vais ver que bate certo. No entanto o termo "ASCII" não é muito correcto no primeiro link, já que ASCII apenas inclui caracteres cujos códigos vão até 127 em Decimal. A partir daí são "extensões", como o Unicode

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade