Instead of restricting username value, just set a display name if username is non compliant and copy the sanitised name into username.