Je n’arrive pas à reproduire le problème. Auriez-vous saisi un espace invisible ou quelque chose de similaire lorsque le message d’erreur « ne doit contenir que des chiffres, des lettres, des tirets, des points et des underscores » s’est affiché ?
La vérification du nom d’utilisateur s’exécute sur le serveur. Par conséquent, s’il y avait un problème avec l’expression régulière, elle devrait toujours générer les mêmes résultats pour la même entrée.