import re
text = "hello23 the2e are 13 5.12apples *specially_x00123 named 31st"
pattern = r"\*[^\W_\n]+_[a-z]\d+\b|(\d)"
print (re.sub(pattern, lambda x: "#" if x.group(1) else x.group(), text))
aW1wb3J0IHJlCnRleHQgPSAiaGVsbG8yMyB0aGUyZSBhcmUgMTMgNS4xMmFwcGxlcyAqc3BlY2lhbGx5X3gwMDEyMyBuYW1lZCAzMXN0IgpwYXR0ZXJuID0gciJcKlteXFdfXG5dK19bYS16XVxkK1xifChcZCkiCnByaW50IChyZS5zdWIocGF0dGVybiwgbGFtYmRhIHg6ICIjIiBpZiB4Lmdyb3VwKDEpIGVsc2UgeC5ncm91cCgpLCB0ZXh0KSkK