Re: Ajudar com regex para acl ip
--- Em seg, 14/3/11, Bruno Francisco Rodrigues <brunofranrodrigues@gmail.com> escreveu:
> De: Bruno Francisco Rodrigues <brunofranrodrigues@gmail.com>
> Assunto: Ajudar com regex para acl ip
> Para: "debian-user-portuguese" <debian-user-portuguese@lists.debian.org>
> Data: Segunda-feira, 14 de Março de 2011, 13:29
> So posso adicionar endereços ip a
> lista da acl que casem com os
> seguintes padrões "IP/MASCARA" e "IP" se usuario digitar
> qualquer
> coisa diferente disso tem que retornar um erro mais como
> podem
> perceber a minha regex não esta tão especifica assim.
> Permitindo que o usuario adcione ao arquivo "IP/".
>
Olá!
creio que isto resolve:
====perl=====
#!/usr/bin/perl
use strict;
use warnings;
my $ip=shift();
if ($ip =~m/(^((25[0-5]|2[0-4][0-9]|1[0-9]{2,2}|[0-9]{1,2})\.){3,3}(25[0-5]|2[0-4][0-9]|1[0-9]{2,2}|[0-9]{1,2})(\/((25[0-5]|2[0-4][0-9]|1[0-9]{2,2}|[0-9]{1,2})\.){3,3}(25[0-5]|2[0-4][0-9]|1[0-9]{2,2}|[0-9]{1,2})|$))/g)
{
print "casou\n";
}
else
{
print "nao casou\n"
}
====perl=====
====bash=====
#!/bin/bash
ip=$1
if [[ $ip =~ (^((25[0-5]|2[0-4][0-9]|1[0-9]{2,2}|[0-9]{1,2})\.){3,3}(25[0-5]|2[0-4][0-9]|1[0-9]{2,2}|[0-9]{1,2})(\/((25[0-5]|2[0-4][0-9]|1[0-9]{2,2}|[0-9]{1,2})\.){3,3}(25[0-5]|2[0-4][0-9]|1[0-9]{2,2}|[0-9]{1,2})|$))
]] ; then
echo "casou"
else
echo "nao casou"
fi
====bash=====
[ ]s, Henry
Reply to: