Expressions régulières - Métacaractères \b et \B
Expressions régulières - Métacaractères
\bet\BCe sont deux métacaractères spéciaux dans les expressions régulières, utilisés pour faire correspondre les limites de mots.
Limite de mot \b
Dans les expressions régulières,\best un métacaractère spécial qui représente une limite de mot. Il correspond à la position au début ou à la fin d’un mot, sans correspondre à aucun caractère réel.
Plus précisément,\bil correspond à l’une des trois situations suivantes :
- Début d’un mot : si
\bil apparaît avant une lettre ou un chiffre, ou au début d’une chaîne, il correspond à la position de début d’un mot. - Fin d’un mot : si
\bil apparaît après une lettre ou un chiffre, ou à la fin d’une chaîne, il correspond à la position de fin d’un mot. - À l’intérieur d’un mot : si
\bil apparaît entre deux lettres ou chiffres consécutifs, il ne correspondra à rien car il n’y a pas de limite de mot.
Voici quelques exemples du métacaractère\b:
- Expression régulière
\bword\bCorrespond au mot entier « word », mais pas à « words » ni à « sword ». - Expression régulière
\b\d+\bCorrespond à un nombre complet, par exemple « 123 », mais pas à « abc123 ». - Expression régulière
\b[A-Z]+\bCorrespond à un mot entier en majuscules, par exemple « HELLO », mais pas à « hello ».
Il convient de noter que\best une assertion de largeur nulle. Il ne correspond pas à des caractères réels, seulement à des positions. Par conséquent, lorsque vous souhaitez faire correspondre un caractère réel, n'utilisez pas\b, mais utilisez d'autres caractères ou combinaisons de caractères.
Exemples
var patternWord = /\bword\b/;
var textWord = 'This is a word in a sentence.';
if (patternWord.test(textWord)) {
document.write('Found matching word:', patternWord.exec(textWord)[0]);
} else {
document.write('No matching content found!');
}
Essayez-le »
Limite non-mot \B
Dans les expressions régulières,\BOui\best le symbole opposé, représentant une limite non-mot, c'est-à-dire les positions qui ne se trouvent pas à des limites de mot.
Plus précisément,\Bil correspond à l'une des situations suivantes :
- À l’intérieur d’un mot : si
\Bil apparaît entre deux lettres ou chiffres consécutifs, il correspond à la position entre ces deux caractères, indiquant qu'ils ne sont pas des limites de mot. - Pas au début ou à la fin d'un mot : si
\Blorsqu'il apparaît avant ou après une lettre ou un chiffre, il correspond à cette position, ce qui indique que ce n'est ni le début ni la fin d'un mot.
Voici quelques exemples du métacaractère\B:
- Expression régulière
\Bword\BCorrespond à "word" dans "sword1", mais pas à "password" ni à "words". - Expression régulière
\B\d+\BCorrespond à "123" dans "abc123def", mais pas à "123" ni à "abc123". - Expression régulière
\B[A-Z]+\BCorrespond à "ELL" et "ORL" dans "HELLO WORLD", mais pas à "HELLO" ni à "WORLD".
Il convient de noter que, contrairement à\b,\B, il s'agit aussi d'une assertion de largeur nulle, qui ne correspond qu'à des positions et non à des caractères réels.
Exemples
var patternWord = /\Bword\B/;
// Celui-ci correspond
var textWord = 'This is a password123 in a sentence.';
// Celui-ci ne correspond pas
//var textWord = 'This is a password in a sentence.';
if (patternWord.test(textWord)) {
document.write('Found matching word:', patternWord.exec(textWord)[0]);
} else {
document.write('No matching content found!');
}
Essayez-le »