Hola Friend, pues mira lo volvi a testear..
Código PHP:
<?php
$cad = "12345678g94";
if(ereg('^[a-z0-9_.-]{3,10}$',$cad))
{
echo "Si pasa";
}else
{
echo "No Pasa";
}
?>
Y no pasa :D

, tampoco me acepta los dos puntos.. ojala viniera algun expert en expresiones regulares.. :D pero pues segun la logica esta ahi.. la cadena debe de iniciar solo con el rango entre corchetes y con una longitud de 3 a 10 y finalizar..