Un tutorial básico:
Expresiones regulares aplicadas a PHP:
http://www.ignside.net/man/php/regex.php
Una acotación al código anterior
if ( eregi("^[a-z0-9_]+$", $cad) ) {
// pasó el check
}
la función eregi() no distingue entre mayusculas y minuscas .. he de ahí que se pueda usar la expresión regular [a-z .....] .. si se usase ereg() .. tendriamos que usar como expresión regular:
... [a-zA-Z0-9_] ...
Un saludo,