[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Falha na comparacao [a-z] [A-Z]
From: |
Jeiks |
Subject: |
Re: [shell-script] Falha na comparacao [a-z] [A-Z] |
Date: |
Wed, 25 Aug 2010 10:41:45 -0300 |
Tiago,
eu já passei por esse problema antes e vi que não é não, [[:lower:]] e
[a-z] são diferentes.
Eu não me lembrei da referência, pq já tem um tempo que vi isso já, mas
o problema alí é que [a-z] é expandido para [aAbBcCdDeE.....] e por isso que
dá problema, mas com o [[:lower:]] ele expande corretamente para caracteres
em minúsculo. Se eu tiver um tempinho aqui, vou ver se acho a referência e
posto pra lista.
abraços
Em 25 de agosto de 2010 10:31, Tiago Peczenyj
<address@hidden>escreveu:
>
>
> hum... mas [:lower:] não é expandido para [a-z] não? Queria fazer um
> teste com algum caracter encoding diferente...
>
> 2010/8/25 Jeiks <address@hidden <jacsonrcsilva%40gmail.com>>:
>
> > Olá Gabriel,
> > isso acontece devido a codificação utilizada em seu sistema, que tem
> as
> > letras em maiúsculo próximas as em minúsculo, ou seja, ao invés de ser
> > "a,b,c,d..." é "a,A,b,B,c,C..."
> > Para garantir que funcione sem precisar mexer com a codificação,
> utilize
> > o lower e o upper, assim:
> >
> > case "$1" in
> > [[:lower:]]) echo "Letra Minuscula"
> > ;;
> > [[:upper:]]) echo "Letra Maiuscula"
> > ;;
> > [0-9]) echo "Numero Inteiro"
> > ;;
> > *) echo "Caracter Especial"
> > ;;
> > esac
> >
> > abs
> >
> > Em 25 de agosto de 2010 02:20, Gabriel Marrocos <
> > address@hidden <gabriel.marrocos%40yahoo.com.br>>
> escreveu:
> >
> >>
> >>
> >> Boa noite a todos,
> >>
> >> Pessoal estou fazendo um script simples que verifica se o carácter
> passado
> >> como
> >> argumento é um numero, uma letra maiúscula, minuscula ou um carácter
> >> especial.
> >>
> >> Porem quando passo o argumento como A,B até X ele me retorna como uma
> letra
> >>
> >> minuscula. Já se eu passar como argumento a letra Z ele me retorna
> >> maiúscula!
> >>
> >> Alguém saberia me dizer se estou fazendo algo errado ou é alguma falha?
> >>
> >> Estou usando Ubuntu 10.04 e bash versão 4.1.5
> >>
> >> case $1 in
> >> [a-z]) echo "Letra Minuscula"
> >> ;;
> >> [A-Z]) echo "Letra Maiuscula"
> >> ;;
> >> [0-9]) echo "Numero Inteiro"
> >> ;;
> >> *) echo "Caracter Especial"
> >> ;;
> >> esac
> >>
> >>
> >> [As partes desta mensagem que não continham texto foram removidas]
> >>
> >>
> >>
> >
> >
> >
> > --
> > Jacson R. C. Silva
>
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
> > ------------------------------------
>
> >
> > ----------------------------------------------------------
> > Esta lista não admite a abordagem de outras liguagens de programação,
> como perl, C etc. Quem insistir em não seguir esta regra será moderado sem
> prévio aviso.
> > ----------------------------------------------------------
> > Sair da lista: address@hidden<shell-script-unsubscribe%40yahoogrupos.com.br>
> > ----------------------------------------------------------
> > Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> > ----------------------------------------------------------
> > Servidor Newsgroup da lista: news.gmane.org
> > Grupo: gmane.org.user-groups.programming.shell.brazil
> >
> > Links do Yahoo! Grupos
> >
> >
> >
>
> --
> Tiago B. Peczenyj
> Linux User #405772
>
> http://pacman.blog.br
>
>
--
Jacson R. C. Silva
[As partes desta mensagem que não continham texto foram removidas]