if ($archive_var && preg_match("/[0-1][0-9]_[1-2][0-9]{3}/", $archive_var))

Wir müssen ja nicht preg_match machen wenn das eh leer ist.