Bom dia Wagner, Nosso amigo Aurelio em seu site tem um exemplo de como fazer isso.
De uma olhada lá. www.aurelio.net [ ]'s :qw =) Wagner Brasileiro escreveu: > Bom dia, > > Estou quebranco a cabeça, arrancando meus cabelos para criar uma ER > que valide um IP sem contar suas máscaras. Já estava quase terminando > quando me passou pela cabeça testar se colocasse algo além do previsto > se ela deixava pasar, e passou, ou seja: > > variavel=999 > echo $variavel|egrep '([0-5]){3}' ele barra, se variavel=555 ele > aceita, porém se variavel=5559 por exemplo ele também aceita e notei > que aí que minha ER stava furada. Claro que amarrei cuidadosamente os > limites de uma faixa IP só usei esse exemplo para ilustrar de manera > rápida meu problema, que na realidade é aceitar apenas a cadeia e mais > nada além dela ao contrário do que eu pensava, os limitadors não > funcionam assim, a ER casa com qualquer outra coisa que atenda > basicamente a 3 números até cinco cada, desde que tenha esta string > dentro. Minha pergunta: Meu erro está na ERR ou na instrução de > verificação? Como posso fazer esse limite? > > Se alguém tiver uma ER dessas prontas eu aceito, o resto do Script eu > já fiz, não achei necessário mandá-lo pois não era o foco, mas > gostaria mesmo assim de uma explicação no que estou errando, pois até > onde eu verifiquei cada bloco isolado da ER completa para validar > todas as seqüências válidas de um IP, elas funcionavam, mas quando as > juntava num "OU" devido a esse problema elas terminavama aceitando > muitas outras coisas. Foquei-me apenas no octeto 254, verificar pra > que a ER fizesse todos os teste possíveis para aceitar qq número nesse > intervalo ou somente dois algarismos ou apenas um incluindo zero. > > __________________________________________________ > Fale com seus amigos de graça com o novo Yahoo! Messenger > http://br.messenger.yahoo.com/ <http://br.messenger.yahoo.com/> > > [As partes desta mensagem que não continham texto foram removidas] > >