Complementando, a regex do username considera que _
é um username válido. E tanto o slug quanto o username consideram que um valor com somente dígitos é válido (ex: 1234
).
Dependendo do caso, isso pode ou não fazer sentido.
O problema de regex é esse, não é tão difícil fazer uma que pegue os casos válidos, mas é mais complicado fazer com que também exclua os inválidos.