This hack looks kewl.
There's one potential concern.
In UBB.classic, it was necessary to loop over the regex replacement operations to ensure that nested tags were translated properly. The /g (replace-all)modifier doesn't deal adequately with nesting.
Some (maybe most) tags aren't nestable, and this wouldn't be a factor in those cases. But some tags, such as a UBB Code font extension I added, required it.
The UBB.threads code doesn't appear to loop, although I didn't study it all that closely. Could this be a problem?