Comment : faire correspondre une chaîne à un modèle (Visual Basic)
Pour déterminer si une expression du String, type de données (Visual Basic) est conforme à un modèle, vous pouvez utiliser le Like (opérateur Visual Basic).
Like accepte deux opérandes. L'opérande gauche est une expression de chaîne, et l'opérande droite est une chaîne qui contient le modèle à utiliser pour la correspondance. Like retourne une valeur Boolean indiquant si l'expression de chaîne est conforme ou non au modèle.
Vous pouvez faire correspondre chaque caractère de l'expression de chaîne avec un caractère spécifique, un caractère générique, une liste de caractères ou une plage de caractères. Les positions des spécifications dans la chaîne de masque correspondent aux positions des caractères de correspondance dans l'expression de chaîne.
Pour faire correspondre un caractère de l'expression de chaîne avec un caractère spécifique
Mettez directement le caractère spécifique dans la chaîne de masque. Certains caractères spéciaux doivent être entourés par des crochets ([ ]). Pour plus d'informations, consultez Like (opérateur Visual Basic).
L'exemple suivant teste si myString se compose exactement du caractère unique H.
Dim sMatch As Boolean = myString Like "H"
Pour faire correspondre un caractère de l'expression de chaîne avec un caractère générique
Mettez un point d'interrogation (?) dans la chaîne de masque. Tout caractère valide dans cette position est mis en correspondance.
L'exemple suivant teste si myString se compose du caractère unique W, suivi exactement de deux caractères d'une valeur quelconque.
Dim sMatch As Boolean = myString Like "W??"
Pour faire correspondre un caractère de l'expression de chaîne avec une liste de caractères
Mettez des crochets ([ ]) dans la chaîne de masque, et insérez la liste de caractères à l'intérieur des crochets. Ne séparez pas les caractères par des virgules ou tout autre séparateur. Tout caractère unique de la liste est mis en correspondance.
L'exemple suivant teste si myString se compose d'un caractère valide, suivi exactement de l'un des caractères A, C ou E.
Dim sMatch As Boolean = myString Like "?[ACE]"
Notez que cette mise en correspondance respecte la casse.
Pour faire correspondre un caractère de l'expression de chaîne avec une plage de caractères
Mettez des crochets ([ ]) dans la chaîne de masque, et à l'intérieur des crochets, mettez les caractères supérieur et inférieur de la plage, séparés par un trait d'union (–). Tout caractère unique de la plage est mis en correspondance.
L'exemple suivant teste si myString se compose des caractères num, suivis exactement de l'un des caractères i, j, k, l, m ou n.
Dim sMatch As Boolean = myString Like "num[i-m]"
Notez que cette mise en correspondance respecte la casse.
Mise en correspondance de chaînes vides
Like traite la séquence [] comme une chaîne de longueur nulle (""). Vous pouvez utiliser [] pour tester si l'expression de chaîne entière est vide, mais vous ne pouvez pas l'utiliser pour tester si une position particulière de l'expression de chaîne est vide. Si une position vide est l'une des options que vous devez tester, vous pouvez utiliser Like plusieurs fois.
Pour faire correspondre un caractère de l'expression de chaîne avec une liste de caractères ou aucun caractère
Appelez deux fois l'opérateur Like la même expression de chaîne et connectez les deux appels avec Or, opérateur (Visual Basic) ou Opérateur OrElse (Visual Basic).
Dans la chaîne de masque de la première clause Like, incluez la liste de caractères, entourée par des crochets ([ ]).
Dans la chaîne de masque de la deuxième clause Like, ne mettez pas de caractères à la position concernée.
L'exemple suivant teste le numéro de téléphone à sept chiffres phoneNum pour exactement trois chiffres, suivis d'un espace, d'un trait d'union (–), d'un point (.) ou d'aucun caractère, suivi d'exactement quatre chiffres.
Dim sMatch As Boolean = (phoneNum Like "###[ -.]####") OrElse (phoneNum Like "#######")
Voir aussi
Référence
Opérateurs de comparaison (Visual Basic)
String, type de données (Visual Basic)