-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Jorge, ERs não são muito a minha praia. Eu acho que, ao invés de
resolver tudo em uma ER, eu quebraria o problema em duas partes.

Primeiro validaria o tamanho da entrada (>= 4 e <= 20) e depois
validaria sua sintaxe (com uma ER).

Vai aí uma dica, em AWK. A ER não está muito elegante. :)

#!/usr/bin/awk -f
{
    if ((length($1) >= 4) && (length($1) <= 20)) {
        if (match($1, "[a-zA-Z]+[0-9]+|[0-9]+[a-zA-Z]+")) {
            print "Entrada Correta."
        } else {
            print "Entrada Incorreta."
        }
    }
}

Jorge Pereira wrote:

> 1) deve conter ao menos um digito
> 2) deve conter ao menos uma letra
> 3) deve ter apenas caracteres de a-zA-Z-0-9
> 4) no minimo 4 caracteres, e no maximo 20

[]s

Gentil de Bortoli Júnior
http://gentil.bortoli.com.br
KeyID: 0x8383E070 - www.keyserver.net

"There Is No Gene For The Human Spirit"
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFDqBY/U6AHyoOD4HARAu4iAKDJ6Drof2lMf66KZgfi8X3Q49hv+QCgrg/n
P1CfwyWOjgGkq/EV+IWzwRM=
=uCkb
-----END PGP SIGNATURE-----


---------------------------------------------------------------------
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: [EMAIL PROTECTED]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/shell-script/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a