
Validateur UUID Regex Go
Validez instantanément des UUID avec le Validateur UUID Regex Go de Qodex. Que vous assigniez des identifiants utilisateur ou référenciez des ressources, cet outil garantit que les UUID sont dans le bon format. Combinez-le avec notre Générateur de clés API, le Générateur de noms d'utilisateur ou le Générateur d'adresses pour créer des jeux de données fictives complets pour les tests et le développement.
Validateur UUID Regex Go - Documentation
Qu'est-ce que UUID Regex ?
En Go, la validation de chaînes devant suivre un format UUID (Universally Unique Identifier) est courante dans les systèmes backend, les API et les enregistrements de bases de données. Les UUID garantissent que chaque entrée possède un identifiant globalement unique, ce qui est particulièrement important lorsque les systèmes s'étendent ou opèrent sur plusieurs serveurs.
Les UUID sont généralement formatés ainsi :
xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxxx : Tout chiffre hexadécimal
M : Version UUID (1 à 5)
N : Variante (8, 9, a ou b)
Un regex pour valider les UUID permet de s'assurer que :
L'entrée a la bonne longueur
Les segments sont correctement formatés
La version et la variante UUID sont valides
Pattern regex pour UUID version 7
Si vous devez correspondre spécifiquement à l'UUID version 7 (introduit pour les identifiants ordonnés par le temps), vous pouvez utiliser ce pattern regex en Go (et dans la plupart des langages de programmation supportant la syntaxe regex standard) :
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$Ce pattern vérifie :
8 chiffres hex
4 chiffres hex
Un chiffre de version (1 à 5)
Un chiffre de variante (8, 9, a, b)
12 derniers chiffres hex
Nouveautés de UUID version 7
L'UUID version 7 apporte une approche axée sur l'ordre temporel pour de meilleures performances dans les systèmes distribués modernes. Contrairement aux versions antérieures, la version 7 utilise l'horodatage Unix Epoch en millisecondes depuis le 1er janvier 1970 UTC pour construire ses valeurs uniques. Cela implique :
Valeurs ordonnées dans le temps : Les identifiants sont naturellement triables par heure de création, ce qui peut accélérer considérablement les opérations de base de données et les journaux d'événements.
Meilleure entropie : La version 7 améliore l'aléatoire et l'unicité par rapport aux versions 1 et 6, réduisant le risque de collisions.
Évolutivité : La structure temporelle rend les UUID plus efficaces pour les applications multi-serveurs à haut débit.
Anatomie d'un UUID v7
Décomposons la structure d'une chaîne UUID version 7. Comme les autres UUID, elle est composée de 36 caractères au total, tirets compris :
xxxxxxxx-xxxx-7xxx-Nxxx-xxxxxxxxxxxxChaque
xest un chiffre hexadécimal (0 à 9, a à f, ou A à F).Le troisième groupe commence toujours par un
7, indiquant la version 7.La position
Ndans le quatrième groupe représente la variante : typiquement 8, 9, a ou b.
Décomposition des segments
Une chaîne UUID v7 est composée de cinq groupes séparés par des tirets :
8 chiffres hex
4 chiffres hex
4 chiffres hex (commençant par « 7 »)
4 chiffres hex (premier chiffre du groupe : 8, 9, a ou b)
12 chiffres hex
Exemple de UUID v7 valide :
01813b48-4c5d-7b10-bc18-3ccd3f89331fComment valider des UUID en Go
Voici un exemple Go fonctionnel :
package mainimport ( "fmt" "regexp" )
func isValidUUID(uuid string) bool { uuidRegex := regexp.MustCompile(
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$) return uuidRegex.MatchString(uuid) }
func main() { test := "3f2504e0-4f89-11d3-9a0c-0305e82c3301" fmt.Println("Is UUID valid?", isValidUUID(test)) }
Valider UUID v7 avec regex dans différents langages
Pour valider spécifiquement les UUID version 7, voici un récapitulatif pour les principaux langages de programmation :
Go / JavaScript / Python / Java :
[^0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$Ce regex garantit que la version est exactement 7 et correspond au format UUID correct.
Correspondre à des UUID sans tirets
Si vous devez faire correspondre des UUID sans tirets, souvent requis pour compresser des identifiants ou les formater pour certaines API, vous pouvez ajuster le pattern en retirant les tirets. Le nouveau pattern recherchera 32 chiffres hexadécimaux consécutifs :
^[0-9a-fA-F]{32}$
Support de UUID v7 dans différents langages de programmation
PHP : Le support natif pour UUID v7 émerge dans les nouvelles versions et bibliothèques open source populaires, mais les anciennes installations PHP peuvent nécessiter des paquets tiers.
JavaScript (ECMAScript) : L'API UUID officielle évolue, mais tous les environnements ne supportent pas v7 nativement. Vous aurez probablement besoin d'un polyfill moderne ou d'une bibliothèque comme
uuid.Python : Avec des bibliothèques largement adoptées comme
uuid7ou les dernières éditions de la bibliothèque standard, le support de v7 se généralise.Golang : La version 7 est incluse dans certains paquets populaires, mais n'est pas encore universelle. Vérifiez toujours vos dépendances.
Java : Java 8 et supérieur bénéficient du support via des paquets tiers ; le support natif reste limité.
.NET : Les dernières versions ajoutent UUID v7 à la boîte à outils standard, mais les projets plus anciens peuvent nécessiter un paquet NuGet externe.
Rust : Les versions récentes de la crate UUID introduisent le support de v7.
Cas d'utilisation
Attribution d'identifiants dans des bases de données distribuées
Identification des utilisateurs ou sessions API
Garantir l'unicité dans les journaux système ou les tokens
Référencer des fichiers, messages ou enregistrements entre systèmes
Conseils pro pour la validation UUID
Les UUID peuvent être en majuscules ou minuscules, ce regex supporte les deux.
Les UUID version 4 sont les plus courants pour la génération aléatoire. Vous pouvez personnaliser le pattern pour ne correspondre qu'à v4 en remplaçant [1-5] par 4.
Validez toujours les UUID avant de les stocker en base de données pour éviter les données corrompues.
Évitez d'utiliser des UUID comme identifiants visibles par les utilisateurs sans les formater ou masquer correctement : ils peuvent être longs et difficiles à lire.
Utilisez
regexp.MustCompile()plutôt queCompile()en Go pour les patterns statiques : c'est plus rapide et plus propre à l'exécution.
Combinez avec ces outils
Créez des flux de données fictives complets en combinant ce validateur avec :
Générateur de clés API : Assignez des identifiants d'accès sécurisés avec les UUID.
Générateur de numéros de téléphone : Créez des profils utilisateur réalistes.
Générateur d'emails : Ajoutez des adresses email aux données utilisateur simulées.
Générateur de noms d'utilisateur : Complétez des profils fictifs avec des noms d'utilisateur aléatoires.
Générateur d'adresses : Associez des UUID à des données d'adresse utilisateur pour les tests.
Frequently Asked Questions
Quelle est la différence entre les versions UUID ?
La validation UUID est-elle sensible à la casse ?
Les UUID peuvent-ils être générés sans tirets ?
Pourquoi utiliser regex pour valider les UUID ?
La validation UUID est-elle nécessaire ?
Related Articles



Testez vos API dès aujourd'hui !
Rédigez en langage naturel, Qodex génère des tests sécurisés et prêts à l'emploi.



