Originariamente inviato da carlo2002
tengo in una unica directory dei file allegati a dei messaggi contenuti in un db.

il numero tra le parentesi è quello dell'id del messaggio
Quindi ti devi trovare il numero tra parentesi?

preg_match_all("|\[\[[0-9]{1,}\]\]|iu", "[[7842523]]fil42776e.jpg", $array);
print_r($array);

restituisce un array($array) con "[[numero]]"

oppure

preg_match_all("|\[\[(.+)\]\]|iu", "[[7842523]]fil42776e.jpg", $array);
print_r($array);

che ti restituisce anche le eventuali lettere.

[EDIT]
print preg_replace("|\[\[(.+)\]\](.+)|", "\\1", "[[8245829]]fadjhfdeg8193245623hvsu9436.jpg");

ti restituisce il ciò che è tra parentesi...