strange.request {
; replaces $2 with $3 in $1
var %str = $1, %str2 = $strip(%str)
var %substr = $2, %replacement = $3
var %pos1 = $pos(%str2,%substr,1)
var %cnt1 = $count($left(%str2,%pos1),$left(%substr,1))
var %pos2 = $calc(%pos1 + $len(%substr) - 1)
var %cnt2 = $count($left(%str2,%pos2),$right(%substr,1))
var %real.pos1 = $pos(%str,$left(%substr,1),%cnt1)
var %real.pos2 = $pos(%str,$right(%substr,1),%cnt2)
return $+($left(%str,$calc(%real.pos1 - 1)),%replacement,$right(%str,$+(-,%real.pos2)))
}