Я думаю, что эту строку следует изменить:
str = regex.Replace(str, "(bkz: <a href=javascript:" & myAnchor.HRef & "><font color=""#CC0000"">$1</font></a> )")
Если я правильно прочитал ваш код, вы включили $ 1 в HRef (это то, что делает Page.GetPostBackEventReference (myAnchor, "$ 1")), а затем заменили его в тексте между тегами шрифта и ссылкой поэтому ваш вывод будет примерно таким:
(bkz: <a href=javascript:__doPostBack(The World)><font color=""#CC0000"">The World</font></a> )
Если вы обновите функцию замены на эту, она должна работать:
str = regex.Replace(str, "(bkz: <a href=""javascript:" & myAnchor.HRef & """><font color=""#CC0000"">$1</font></a> )")
т.е. оберните вызов javascript в кавычки, и ваш мир будет хорошим.