Arkadaşım muhakkak atladığın bir yer var.

$mesaj = 'Su kod ile site üzerindeki url lerin hepsini gizliyorum <a href="http://www.yamantasarim.com/">Yaman</a>
Fakat bir URL cesidini gizlemesini istemiyorum. O URL yapisida su sekilde olusuyor <a href="http://www.siteismi.com/forum/autolink.php?id=49&forumid=208&script=showthread">Deneme</a> Bu URL yapisindaki linkleri es gecmesini saglayamadim. Sizin önerileriniz nelerdir?';

$degis = 'zzz';
function kontrol($gelen){
	global $degis;
	if(preg_match('/siteismi\.com\/forum\/autolink\.php\?id=([0-9]*)\&forumid=([0-9]*)\&script=showthread/smi',$gelen[0])){
		return $gelen[0];
	}else{
		return $degis;
	}
}
$mesaj = preg_replace_callback("!<a[^>]*(http|www)(.*)</a>!siU", 'kontrol', $mesaj);
Çalıştırınca ekrana bastığı sonuç:

Su kod ile site üzerindeki url lerin hepsini gizliyorum zzz
Fakat bir URL cesidini gizlemesini istemiyorum. O URL yapisida su sekilde olusuyor <a href="http://www.siteismi.com/forum/autolink.php?id=49&forumid=208&script=showthread">Deneme</a> Bu URL yapisindaki linkleri es gecmesini saglayamadim. Sizin önerileriniz nelerdir?
Yani istediğini yanlış anlamadıysam normal çalışıyor.