>>706はJavadoc見るかぎり
String str = "あいうえお";
str.replaceAll("(うえ)", "hoge$1hoge");
でもいけるはず。

ということはもしかしたら
str.replaceAll("うえ", "hoge$0hoge");
でもいけるかもしれない。