shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] teste numerico


From: jimmy
Subject: Re: [shell-script] teste numerico
Date: Wed, 24 Sep 2008 11:10:12 -0300
User-agent: Mutt/1.4.2.3i

estranho, estou usando uma versão anterior a sua do bash 
("GNU bash, version 3.1.17(2)-release") e não tenho esse
problema.

$ var=0123456 ; if [[ $var =~ "^[0-9]+$" ]]; then echo "numérico"; else echo 
"não numérico"; fi
numérico

$ var=string0123456 ; if [[ $var =~ "^[0-9]+$" ]]; then echo "numérico"; else 
echo "não numérico"; fi
não numérico


On Wed, Sep 24, 2008 at 03:58:18PM +0200, Gmail wrote:
> 
> 
> En/na jimmy ha escrit:
> >
> > On Wed, Sep 24, 2008 at 03:12:39PM +0200, Gmail wrote:
> > > En/na jimmy ha escrit:
> > > >
> > > > a expressão regular utilizada é "^[0-9]+$" e não "^[0-9]+" como você
> > > > mencionou.
> > > >
> > > > antes eu fazia esses testes com [ "$(echo $var | grep "^[0-9]+$")" ].
> > > >
> > > > On Tue, Sep 23, 2008 at 03:47:20PM -0300, Pablo Cardoso wrote:
> > > > > jimmy, esse método não só testa se o início da variável possui 
> > números
> > > > > (pois usa o ^[0-9]+)?
> > > > >
> > > > > uma variável com valor "nome123" é filtrada nesse caso como numérico
> > > > > ou não numérico?
> > > > >
> > > > > []'s
> > > > >
> > > > >
> > > > > 2008/9/23 jimmy <address@hidden 
> > <mailto:ronaldo_tgz%40yahoo.com.br>
> > > > <mailto:ronaldo_tgz%40yahoo.com.br>>:
> > > > > > talvez no seu caso seja possível utilizar um modo de testar 
> > variáveis
> > > > > > que aprendi aqui na lista:
> > > > > >
> > > > > > $ var=0123456789
> > > > > > $ if [[ $var =~ "^[0-9]+$" ]]; then echo "numérico"; else echo 
> > "não
> > > > > > numérico"; fi
> > > > > > numérico
> > > > > > $ var=string1
> > > > > > $ if [[ $var =~ "^[0-9]+$" ]]; then echo "numérico"; else echo 
> > "não
> > > > > > numérico"; fi
> > > > > > não numérico
> > > > > >
> > > > > > On Tue, Sep 23, 2008 at 03:10:32PM -0300, Pablo Cardoso wrote:
> > > > > >> Hehehe resposta de principiante: você pode dar um echo na 
> > variável e
> > > > > >> utilizar um pipe "tr -d [A-z]" para remover os caracteres que não
> > > > > >> sejam numéricos... Para validar, é só usar um if antes desse 
> > comando.
> > > > > >>
> > > > > >> Claro que devem haver soluções mais elegantes :P
> > > > > >>
> > > no meu bash 3.2 do ubuntu 7.11 a sua expressão retorna sempre "não 
> > numérico"
> >
> > posta o log do incidente ( seqüência de comandos + saida ).
> >
> > >
> > >
> > > Pere
> > >
> > > address@hidden <mailto:t.collons%40gmail.com> 
> > <mailto:address@hidden <mailto:t.collons%40gmail.com>>
> > >
> > >
> > > <http://www.imatge.com/ <http://www.imatge.com/>>
> > >
> > >
> > >
> > >
> > > ------------------------------------
> >
> >  
> 
> -- 
> 
> comando e "var=0123456 ; if [[ $var =~ "^[0-9]+$" ]]; then echo 
> "numérico"; else echo "não numérico"; fi"
> 
> resposta e "não numérico"
> 
> removendo os duplos
> 
> 
> Pere
> 
> address@hidden <mailto:address@hidden>
> 
> 
> 
> ------------------------------------


reply via email to

[Prev in Thread] Current Thread [Next in Thread]