Expressão regular para mascarar strings usando substituição de strings

Eu gostaria de usar uma expressão regular para mascarar todos os três primeiros caracteres alfanuméricos de cada palavra em uma sequência usando um caractere de máscara (como "x"), para que "1 Buckingham Palace Road, London" se torne "1 Bucxxxxxxx Palxxx Roax, Lonxxx ".

Manter os três primeiros caracteres é feito facilmente usando

s/\b(\w{0,3})(.*)\b/$1/g

mas não consigo descobrir como inserir comprimento ($ 2) vezes o caractere de mascaramento em vez de $ 2.

Obrigado

questionAnswers(6)

yourAnswerToTheQuestion