À retenir
- C'est une règle de recherche textuelle.
- Il constitue le cœur des expressions régulières (Regex).
- Il permet d'automatiser le tri et le nettoyage de grandes quantités de texte.
En programmation, un pattern (ou motif) est un modèle textuel utilisé pour repérer des informations précises dans un bloc de texte. C'est un peu comme un pochoir : on le pose sur une page et seules les lettres correspondant à la forme découpée apparaissent, ce qui permet de trouver facilement des numéros de téléphone, des adresses e-mail ou des mots spécifiques.
Étymologie
Emprunté à l'anglais pattern (motif, modèle), lui-même issu du vieux français « patron ». En informatique, le terme s'est imposé avec le développement des expressions régulières (RegEx) pour désigner la syntaxe décrivant l'ensemble des chaînes de caractères que l'on souhaite capturer.
Exemples d'usage
- Le pattern
^[0-9]{5}$permet de vérifier si une saisie correspond exactement à un code postal français (5 chiffres). - Dans un éditeur de texte, utiliser
s+pour détecter tous les espaces inutiles en fin de ligne. - Rechercher toutes les dates au format JJ/MM/AAAA dans un document juridique.
Cas d'usage
On utilise les patterns principalement pour la validation de formulaires (vérifier qu'un mot de passe contient des chiffres), la recherche et remplacement complexe dans du code, ou encore l'analyse de fichiers de logs (journaux d'erreurs) pour extraire des données précises.
Bonnes pratiques
Un pattern trop complexe devient vite illisible (on parle de « write-only code »). Il est recommandé d'utiliser des outils de test en ligne pour visualiser le comportement de son motif avant de l'intégrer, et de commenter ses expressions régulières lorsqu'elles dépassent quelques caractères.
Synonymes
Antonymes
Conseil
Si vous débutez, ne cherchez pas à apprendre par cœur toutes les syntaxes de patterns. Apprenez les bases (ancres, quantificateurs, classes de caractères) et utilisez des testeurs visuels comme Regex101 pour comprendre comment chaque partie de votre pattern réagit avec votre texte.
Questions fréquentes
Est-ce que le terme pattern ne s'applique qu'aux Regex ?
Non, en informatique on parle aussi de 'Design Patterns' (patrons de conception), qui sont des solutions types à des problèmes de programmation, mais dans le contexte du traitement de texte, cela désigne bien le motif de recherche.
Un pattern est-il sensible à la casse ?
Par défaut oui, mais la plupart des outils permettent d'ajouter une option (un drapeau ou 'flag') pour ignorer la différence entre majuscules et minuscules.