Помощь по регулярным выражениям php

Гость19 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
09.02.2007

PHP. Есть файл с шаблоном. Требование - в тексте есть регулярные выражения типа [GET;id:{ID}] - где id и {ID} - динамически меняющееся содержимое. Требуется сделать так, чтобы каждое такое вхождение при условии, что id есть в $_GET (isset) и заменить [GET;id:{ID}] на {ID} во всём тексте.

Пример шаблона - http://ru.melodii.info/includes/index.inc - там в 4 строке 2 выражения.

Пытался сделать так -

while (preg_match("/\[GET:([a-z_]{1,100}):(.{1,10})\]/",$template,$tm) != FALSE)

{

print_r($tm);

if (isset($_GET[$tm[1]]))$template = str_replace($tm[0],$tm[2],$template);

else $template = str_replace($tm[0],"",$template);

unset($tm);

}

Но он что-то мне оба выражения прописал - просто взял начальную скобку от первого, а конечную от второго :( Руки кривые видимо у меня...