Rexact
Cheatsheet

Regex Xbox Gamertag

Since the 2019 overhaul, an Xbox Gamertag is no longer 15 characters but 12 - Microsoft reserved 3 characters for a numeric suffix ("#1234") for when the chosen name is already taken. Three independent projects found on GitHub and Drupal.org (an Xbox 360 emulator, a Python availability-checking script, a Drupal module) all still carry the historical 15-character limit - one of them baked right into the error message shown to the user. Here's an up-to-date pattern, compared against these three attempts stuck in the past.

/^[A-Za-z][A-Za-z0-9 ]{2,11}$/
passes 20/20 cases

Comparison of existing patterns

Implementation

const re = new RegExp("^[A-Za-z][A-Za-z0-9 ]{2,11}$", "");
re.test(input);

Limits

  • Valide seulement la FORME (3-12 caractères, doit commencer par une lettre) : ne consulte pas le service Xbox Live pour confirmer qu'un Gamertag est réellement attribué et actif.
  • Ne couvre que les lettres latines et les chiffres : Microsoft prend en charge 13 alphabets différents (dont cyrillique, arabe, chinois) pour le Gamertag — hors périmètre d'un motif limité à A-Z et 0-9 pour rester lisible.
  • N'impose pas les règles fines sur les espaces (jamais en début, en fin, ni deux consécutifs) : ce motif autorise des espaces n'importe où dans la plage 3-12, plus permissif que la règle réelle de Microsoft sur ce point précis.
  • N'inclut jamais le suffixe numérique (« #1234 ») ajouté automatiquement quand le nom choisi est déjà pris par un autre joueur : ce motif valide le nom seul, pas la forme complète affichée en jeu.