Boh, non uso le POSIX cmq sembrerebbe che la quadra non la vuole vedere, se la metti esterna perō mi pare funzioni:

codice:
$str = "as]d1z";

if ( ereg("^([[:alpha:]1]|\])+$", $str) ) { $risultato= true; }
else { $risultato= false; }