Comparaison de chaînes insensibles à la casse en JavaScript
-
Utilisez les méthodes de chaînes
toUpperCase()
/toLowerCase()
pour effectuer une comparaison insensible à la casse en JavaScript -
Utilisez la méthode
localeCompare()
pour faire une comparaison insensible à la casse en JavaScript -
Utiliser une méthode d’expression régulière
RegExp
pour faire une comparaison insensible à la casse en JavaScript
Cet article explique comment effectuer une comparaison de chaînes de caractères insensible à la casse en JavaScript.
Utilisez les méthodes de chaînes toUpperCase()
/toLowerCase()
pour effectuer une comparaison insensible à la casse en JavaScript
Dans la méthode toUpperCase()
, les chaînes sont d’abord converties en majuscules ou en minuscules, puis comparées avec l’opérateur triple égal ===
.
Voici un exemple.
var stringA = 'This is a JavaScript tutorial';
var stringB = 'THIS is A javascript TUTORIAL';
if (stringA.toUpperCase() === stringB.toUpperCase()) {
alert('The strings are equal.')
} else {
alert('The strings are NOT equal.')
}
Production :
The strings are equal.
Vous pouvez également convertir les chaînes de caractères en minuscules en utilisant la méthode toLowercase()
string comme dans l’exemple suivant.
var stringA = 'This is a JavaScript tutorial';
var stringB = 'THESE are javascript TUTORIALS';
if (stringA.toLowerCase() === stringB.toLowerCase()) {
alert('The strings are equal.')
} else {
alert('The strings are NOT equal.')
}
Production :
The strings are NOT equal
Il est à noter, cependant, que la méthode des majuscules est préférable. C’est parce que certains caractères de l’alphabet ne peuvent pas faire un aller-retour lorsqu’ils sont convertis en minuscules. Cela signifie essentiellement qu’ils peuvent ne pas être convertis d’une localité à une autre de manière à représenter ces caractères de données avec précision.
Utilisez la méthode localeCompare()
pour faire une comparaison insensible à la casse en JavaScript
Bien que la méthode ci-dessus donne une réponse facile, elle peut ne pas fonctionner correctement lorsque les chaînes comprennent des caractères Unicode. La méthode de comparaison de chaînes de caractères localeCompare
peut s’en charger. Elle est utilisée avec l’option sensitivity: 'base'
pour capturer tous les caractères Unicode. Par exemple, nous pouvons le faire dans une instruction if()
pour obtenir des résultats lorsque les chaînes de caractères en question sont égales et lorsqu’elles ne le sont pas :
if ('javascript'.localeCompare('JavaScrpt', undefined, {sensitivity: 'base'}) ==
0) {
alert('The strings are equal')
} else {
alert('The strings are different.')
}
Production :
The strings are different.
Utiliser une méthode d’expression régulière RegExp
pour faire une comparaison insensible à la casse en JavaScript
Dans cette méthode, nous utilisons le modèle RegExp
avec la méthode test()
pour faire une comparaison entre les chaînes insensibles à la casse. Par exemple,
const strA = 'This is a case sensitive comparison';
const strB = 'This is a CASE SENSITIVE comparison';
const regex = new RegExp(strA, 'gi');
const comparison = regex.test(strB)
if (comparison) {
alert('Similar strings');
}
else {
alert('Different strings');
}
Production :
Similar strings
Article connexe - JavaScript String
- Obtenir le dernier caractère d'une chaîne en JavaScript
- Transformer une chaîne en une date en JavaScript
- Obtenir le premier caractère d'une chaîne en JavaScript
- Convertir un tableau en chaîne en JavaScript
- Vérifier l'égalité des chaînes en JavaScript
- Convertir un tableau en chaîne sans virgule en JavaScript