Ciao,
l'errore non è riferito alla parentesi [ dell'espressione regolare, ma a quella dell'array.
Manca il $ nel nome della variabile array:

Codice PHP:
$telcasa=preg_replace("`[^0-9]`i"""$numeridb["tel_casa"]);