Limite de mot JavaScript (\b)
Introduction aux limites de mots
Dans les expressions régulières JavaScript, l’ancre \b est utilisée pour faire correspondre les limites de mots. Une limite de mot est une position entre un caractère de mot (généralement \w, qui inclut [a-zA-Z0-9_]) et un caractère non mot (tout ce qui n’est pas un caractère de mot). Cela permet une correspondance précise de mots entiers et peut être particulièrement utile pour des tâches comme la recherche, le remplacement ou la validation de motifs de mots spécifiques dans un texte.
Utilisation de l’ancre \b
L’ancre \b est une assertion de largeur nulle qui correspond aux positions où un caractère de mot est adjacent à un caractère non mot. Elle ne consomme aucun caractère lors de la correspondance. Cela peut se produire au début ou à la fin d’un mot.
Exemple : correspondance de mots entiers
Explication :
- L’expression régulière
/\bcat\b/correspond au mot "cat" en tant que mot entier. - Dans la chaîne
'The cat is here.', "cat" est un mot distinct, donc la correspondance esttrue. - Dans la chaîne
'The caterpillar is here.', "cat" fait partie du mot "caterpillar", donc la correspondance estfalse.
Exemple : trouver des mots entiers dans un texte
Explication :
- L’expression régulière
/\bcat\b/gtrouve toutes les occurrences de "cat" en tant que mot entier dans le texte. - Elle ne correspond qu’à "cat", et pas à "scatter", "caterpillar" ou "catfish", car "cat" n’est pas un mot distinct dans ces contextes.
- Le résultat est un tableau contenant
["cat"].
Applications pratiques
Validation des champs de saisie
Les limites de mots peuvent être utiles pour valider des champs de saisie lorsque des correspondances exactes de mots sont requises.
Explication :
- L’expression régulière
/^\w+$/garantit que l’entrée est un seul mot sans espaces. ^affirme le début de la chaîne, et$affirme la fin. Comme\wne correspond qu’aux caractères de mot,^et$imposent implicitement des limites de mots, rendant\bredondant ici.\w+correspond à un ou plusieurs caractères de mot (y compris les lettres, les chiffres et les underscores).'user123'correspond parce qu’il s’agit d’un seul mot sans espaces.'user 123'ne correspond pas parce qu’il contient un espace, ce qui rompt la séquence de caractères de mot.- Notez que
\winclut les underscores, ce qui peut affecter la logique de validation si vous souhaitez les exclure.
Extraction de mots à partir d’une phrase
Vous pouvez extraire des mots spécifiques d’une phrase à l’aide des limites de mots.
Explication :
- Le motif d’expression régulière
/\btest\w*\b/gicorrespond à tout mot commençant par "test". - L’indicateur
ggarantit que toutes les correspondances dans la chaîne sont renvoyées. - L’indicateur
igarantit que la correspondance n’est pas sensible à la casse, donc il correspond à la fois à "test" et à "Testing". - Le résultat est
["test", "Testing"], car les deux mots commencent par "test" et sont suivis de zéro ou plusieurs caractères de mot.
Combiner les limites de mots avec d’autres motifs
Les limites de mots peuvent être combinées avec d’autres motifs d’expressions régulières pour des correspondances plus complexes.
Exemple : trouver des mots avec un préfixe
Explication :
- L’expression régulière
/\bpre\w*\b/gcorrespond aux mots commençant par le préfixe "pre". \bpreaffirme une limite de mot suivie de "pre".\w*correspond à zéro ou plusieurs caractères de mot.\baffirme une limite de mot à la fin.- Le résultat est un tableau contenant
["preheat", "prefix", "prepare", "pressure"].
Exemple : trouver des mots avec un suffixe spécifique
Explication :
- L’expression régulière
/\w+ing\b/gcorrespond aux mots se terminant par "ing". \w+correspond à un ou plusieurs caractères de mot.ing\bcorrespond à "ing" suivi d’une limite de mot.- Le résultat est un tableau contenant
["running", "walking", "talking", "thinking"].
INFO
Lorsque vous devez faire correspondre des mots entiers ou vous assurer que des mots ne font pas partie de chaînes plus longues, utilisez l’ancre \b pour définir précisément les limites de mots
Utiliser \b pour une correspondance précise des mots
Exemple : correspondance précise des mots
Explication :
- L’expression régulière
/\bdog\b/gcorrespond au mot "dog" en tant que mot entier. - Elle ne correspond pas à "dogs" parce que "dog" n’est pas un mot distinct dans ce contexte.
- Le résultat est un tableau contenant
["dog"].
Conclusion
L’ancre \b dans les expressions régulières JavaScript est un outil puissant pour faire correspondre les limites de mots. En utilisant cette ancre, vous pouvez créer des motifs précis et efficaces pour trouver, remplacer et valider des mots dans un texte. Que vous travailliez sur des fonctionnalités de recherche, la validation de données ou le traitement de texte, comprendre et utiliser les limites de mots peut améliorer considérablement vos capacités en expressions régulières.
Practice
Quelle est l’utilité de la limite de mot '\b' en JavaScript ?