Così dovrebbe funzionare...
Codice PHP:
$stringa = '<div>
[b]ciccio@example.com[/b] si é abbonato con successo.</p>
<h3>[url="http://www.example.com/dsfdsfdsfds"]Gestione abbonamento[/url]</h3>
</div>';
echo $email = preg_replace('%^.*[\t\r\n\s]+|[\t\r\n\s]+.*$%', '', preg_replace('%^.*>([^>]*@[^<]+).*$%is', "$1", $stringa));
# oppure
echo $email = preg_replace('%^.*[\t\r\n\s]+|[\t\r\n\s]+.*$%', '', preg_replace('%^.*[b][\t\r\n\s]*|[\t\r\n\s]*[/b].*$%is', '', $stringa));