Ho capito il tuo problema ed ho trovato una soluzione alternativa...
$string č la stringa che contiene alcuni stringhe url e dei tag che
si aprono e si chiudono con le parentesi quadre, tipo [tag] ... [/tag].
Bene, allora tu prima rimuovi tutti i tag con le parentesi quadre
tramite una nuova espressione regolare e poi applichi la tua
espressione regolare al risultato.
Se hai problemi la possiamo fare insieme.