Pattern proposé
^(https?:\/\/)?([\w-]+\.)+[\w-]{2,}(\/.*)?$
Ce que ça matche
https://example.com
example.org/page
Limites connues
- Ne valide pas toutes les formes possibles d’URL.
- Ne couvre pas tous les cas de domaines internationalisés.
Pattern proposé
^https:\/\/([\w-]+\.)+[\w-]{2,}(\/.*)?$
Ce que ça matche
https://example.com
https://docs.example.com/path
Limites connues
- Refuse les URLs sans protocole.
- Refuse les URLs en http://.
Pourquoi utiliser une regex URL ?
Les regex URL sont utilisées pour valider les adresses web saisies dans des formulaires, des API, des CMS ou des fichiers de configuration.
Elles permettent de détecter rapidement les erreurs de format avant d’enregistrer ou de traiter une URL.
Qu’est-ce qu’une URL valide ?
Une URL contient généralement un protocole comme HTTP ou HTTPS, un nom de domaine et éventuellement un chemin, des paramètres ou un fragment.
Les URL modernes peuvent également inclure des noms de domaine internationaux, des ports et des caractères encodés, ce qui rend leur validation complète plus complexe.
Validation HTTP ou HTTPS
Certaines applications acceptent toutes les URL valides tandis que d’autres imposent HTTPS pour des raisons de sécurité.
Une regex dédiée peut permettre de vérifier rapidement que seuls des liens sécurisés sont autorisés.
Une regex suffit-elle pour valider une URL ?
Une regex est très utile pour détecter les erreurs de format évidentes, mais elle ne peut pas vérifier l’existence réelle d’un site web.
Une validation complète nécessite souvent des contrôles supplémentaires côté serveur.
Erreurs fréquentes lors de la validation des URL
De nombreuses regex URL sont soit trop permissives, soit trop strictes.
Le meilleur compromis consiste généralement à accepter les URL courantes tout en bloquant les formats manifestement invalides.
Cas d’utilisation des regex URL
Les regex URL sont utiles pour les formulaires de soumission de sites, les profils de réseaux sociaux, les webhooks, les paramètres d’API et les outils de gestion de liens.
Elles permettent une validation rapide avant d’effectuer des vérifications plus approfondies.