Yo uso:
^[0-9]*$
Código PHP:
if (eregi("^[0-9]*$",$tu_variable)){
echo "Contiene numeros";
} else {
echo "no contiene numeros";
}
En expresiores regulares hay que tener en cuenta ^ para indicar "principio de la cadena" .. y *$ para final .. (algo así es la cosa .. En un manual de expresiones regulares lo pueden ver mejor ..)
El eregi() aquí no hace mucho . pero con la "i" es para que no distinga entre mayusculas y minusculas como no lo hace ereg() por ejemplo ...
Un saludo,