Aller au contenu

Ensembles et plages d'expressions régulières en JavaScript

Les expressions régulières (regex) en JavaScript sont un outil puissant pour le traitement et la manipulation de texte. Comprendre les ensembles et les plages dans les expressions régulières peut considérablement améliorer votre capacité à rechercher et gérer des chaînes de caractères efficacement. Ce guide explore le concept des ensembles et des plages dans les regex JavaScript, en fournissant des exemples pratiques et des conseils pour une utilisation optimale.

Introduction aux ensembles dans les expressions régulières

Un « ensemble » dans une expression régulière vous permet de spécifier un groupe de caractères qui peuvent correspondre à une position donnée dans la chaîne recherchée. Définis entre crochets [], les ensembles sont fondamentaux pour créer des expressions régulières flexibles et puissantes.

Ensembles de base

Par exemple, l'ensemble [abc] correspondra à n'importe quel caractère unique 'a', 'b' ou 'c'. Voici comment vous pourriez l'utiliser dans un extrait de code :


Output appears here after Run.

Ensembles négatifs

Pour créer un ensemble de négation qui correspond à tout caractère non spécifié, utilisez le symbole ^ à l'intérieur des crochets. Par exemple, [^abc] correspond à tout caractère sauf 'a', 'b' ou 'c'.


Output appears here after Run.

Comprendre les plages

Les plages vous permettent de spécifier un ensemble de caractères dans une séquence, rendant votre regex plus lisible et souvent plus efficace.

Plages numériques

Par exemple, [0-9] représente n'importe quel chiffre de '0' à '9'. Cela est particulièrement utile pour faire correspondre des parties de chaînes contenant des nombres :


Output appears here after Run.

Plages alphabétiques

De même, [a-z] correspond à n'importe quelle lettre minuscule de 'a' à 'z'. Vous pouvez combiner des plages pour inclure plusieurs classes de caractères :


Output appears here after Run.

Utilisation avancée des ensembles et des plages

Combiner des ensembles avec des classes de caractères prédéfinies dans les expressions régulières JavaScript permet des capacités de correspondance de texte encore plus nuancées et puissantes. Bien que certaines combinaisons puissent sembler redondantes, comprendre comment les utiliser efficacement dans vos motifs regex peut optimiser votre traitement de texte.

Exemple : Combiner les caractères de mot et les symboles spéciaux

Examinons un exemple pratique où la combinaison de classes de caractères avec des caractères spécifiques peut être très utile.


Output appears here after Run.

Ici, \w inclut toutes les lettres, les chiffres et le caractère de soulignement. En ajoutant ! à l'ensemble, l'expression régulière correspond également spécifiquement au point d'exclamation, qui n'est normalement pas couvert par \w. Ce motif est utile lorsque vous souhaitez inclure une ponctuation spécifique dans vos correspondances sans étendre la correspondance à tous les caractères spéciaux.

Support Unicode et multilingue

Pour faire correspondre des lettres dans différentes langues, vous pouvez utiliser les échappements de propriétés Unicode disponibles dans ECMAScript 2018 et versions ultérieures. Par exemple, \p{L} correspond à n'importe quel type de lettre de n'importe quelle langue :


Output appears here after Run.

Exclusion de plages dans les expressions régulières

Dans les expressions régulières JavaScript, les plages d'exclusion vous permettent de définir un ensemble de caractères qui ne doivent pas être correspondus. Cela se fait en utilisant le symbole ^ immédiatement après le crochet ouvrant dans un ensemble de caractères. Par exemple, [^abc] correspond à tout caractère sauf 'a', 'b' ou 'c'.

Exemple d'exclusion de plages


Output appears here after Run.

Cette regex trouvera tous les caractères non voyelles, y compris la ponctuation et les espaces. C'est un moyen puissant de filtrer les caractères indésirables d'une chaîne.

Échappement des caractères spéciaux dans les ensembles

Certains caractères ont une signification particulière dans les expressions régulières (par exemple, les crochets [ ], la barre oblique inverse \, le symbole ^ et le tiret -). Pour utiliser ces caractères comme littéraux dans un ensemble, vous devez les échapper à l'aide d'une barre oblique inverse \.

Exemple d'échappement de caractères spéciaux


Output appears here after Run.

Dans cet exemple, les crochets sont échappés avec des barres obliques inverses afin d'être traités comme des caractères littéraux plutôt que comme la définition d'un ensemble de caractères.

Conclusion

Maîtriser les ensembles et les plages dans les regex JavaScript améliore non seulement vos capacités de manipulation de chaînes, mais conduit également à un code plus propre et plus efficace. Elles sont particulièrement puissantes pour l'analyse de texte, la validation des entrées et le traitement des données dans le développement web.

Pratique

Quelles sont les caractéristiques et fonctionnalités des Ensembles et Plages en JavaScript ?

Trouvez-vous cela utile?

Aperçu dual-run — comparez avec les routes Symfony en production.