Desculpe bater em um cavalo morto, mas é meio estranho que ninguém apontou isso - "Sim, você pode, mas isso é o oposto de como você usa a captura de grupos na vida real".
Se você usar o Regex da maneira que deve ser usado, a solução é tão simples quanto esta:
"6 example input 4".replaceAll("(?:\\d)(.*)(?:\\d)", "number$11");
Ou, conforme indicado por shmosel abaixo,
"6 example input 4".replaceAll("\d(.*)\d", "number$11");
... já que na sua regex não há nenhuma boa razão para agrupar os decimais.
Você não costuma usar grupos de captura nas partes da corda que deseja descartar , você os usa na parte da corda que deseja manter .
Se você realmente deseja grupos que deseja substituir, o que provavelmente deseja é um mecanismo de modelagem (por exemplo, bigode, ejs, StringTemplate, ...).
Como um aparte para os curiosos, mesmo os grupos que não capturam em regexes estão lá apenas para o caso de o mecanismo de regex precisar deles para reconhecer e pular o texto variável. Por exemplo, em
(?:abc)*(capture me)(?:bcd)*
você precisa deles se sua entrada puder ser semelhante a "abcabc capture me bcdbcd" ou "abc capture me bcd" ou mesmo apenas "capture me".
Ou, dito de outra forma: se o texto é sempre o mesmo e você não o captura, não há razão para usar grupos.