Ah, ho capito... beh... la ricerca puoi farla con le funzioni di stringa o le espressioni regolari... per non usare le regexp e semplificare tutto potresti semplicemente usare dei segnaposto tipo:
{IMG::25::right}
A questo punto cerchi "{IMG" e poi esplodi il resto della stringa, ad es.:
Codice PHP:// $tpl // (contiene il template) per esempio con {IMG::25::right}
// ...
$phb = '{IMG'; $phe = "}"; // marcatori di inizio e fine
$pb = strpos($ph, $tpl); // posizione del placeholder
if ($p !== false) {
$pe = strpos($pb, $tpl, $pb); // fine placeholder
$pl = $pe-$pb; // lunghezza placeholder
$cd = substr($tpl, $p+6, $pl-2); // ...controllare! Insomma: tutto meno inizio e fine
// $cd dovrebbe contenere 25::right
list($id, $pos) = explode('::', $cd);
$tag = '[img].../?id='.$id.' align=[/img]';
};
// ...
solo che devi mettere tutto in un ciclo per esaminare vari placeholders e poi usare str_replace per la sostituzione... non è "pulitissimo" come processo, ma è un modo semplice di procedere e forse per iniziare più facile che ragionare con regexp se poi avessi bisogno di modificarle.
Consiglio cmq di usare un motore già pronto!
...da controllare soprattutto le posizioni (+1 / -1 da verificare...)!!!!

Rispondi quotando