Comment comparer des chaînes insensibles à la casse en JavaScript

Comment Comparer Des Chaines Insensibles A La Casse En Javascript



Lors de l'écriture du code, un développeur peut souvent avoir besoin de comparer deux chaînes pour s'assurer que des tâches spécifiques sont terminées. La comparaison de chaînes sans prêter attention à leur casse, comme les majuscules et les minuscules, est connue sous le nom de comparaison insensible à la casse. De nombreuses langues prennent en charge la comparaison de chaînes avec sensibilité et insensibilité à la casse.

Cet article illustrera les méthodes de comparaison insensible à la casse des chaînes en JavaScript.







Comment comparer des chaînes insensibles à la casse en JavaScript ?

Pour une comparaison de chaînes non sensible à la casse en JavaScript, utilisez les méthodes prédéfinies suivantes :



    • méthode localeCompare()
    • Méthode toUpperCase() et toLowerCase()
    • Expression régulière avec la méthode test()

Examinons séparément le fonctionnement de chacune des approches mentionnées ci-dessus.



Méthode 1 : comparaison de chaînes insensibles à la casse à l'aide de la méthode LocaleCompare()

La comparaison insensible à la casse des chaînes utilise le ' localeCompare() ' méthode. Cette méthode renvoie un nombre (positif, négatif ou zéro). Les chaînes sont comparées dans un ordre de tri, si la chaîne de référence est plus longue que la chaîne de comparaison ou si elle vient après la chaîne comparée, cela donne un nombre positif. Si la chaîne de référence est plus courte ou précède la chaîne comparée, elle renvoie un nombre négatif. Un zéro doit être renvoyé si la chaîne de référence est équivalente à la chaîne comparée.





Syntaxe

Suivez la syntaxe donnée-fournie pour la méthode localeCompare() :



string1.localeCompare ( chaîne2, paramètres régionaux, options )


Ici,

    • ' chaîne2 ” est la chaîne de comparaison, où la chaîne 1 sera comparée.
    • ' local ” est la balise de langue.
    • ' choix ” sont les paramètres régionaux fournis par l'utilisateur lors de son utilisation.

Exemple

Créez deux chaînes ' chaîne1 ' et ' chaîne2 ', avec des chaînes ' linuxhint ' et ' LinuxHintGenericName ' respectivement:

var chaîne1 = 'Linux' ;
var chaîne2 = 'LinuxHint' ;


Comparez string1 avec string2 en utilisant le ' localeCompare() ' méthode et stocker le résultat dans une variable ' composition ”. Le troisième argument de la méthode sera défini comme ' sensibilité : 'de base' ” qui indique que les lettres de base des chaînes comparées ne sont pas différentes :

var comp = string1.localeCompare ( chaîne2, indéfini, { sensibilité: 'base' } )


Dans l'instruction conditionnelle, vérifiez si la valeur renvoyée de la méthode localeCompare () est équivalente à zéro, elle imprime ' Les cordes sont égales ', autre, ' Les chaînes ne sont pas égales ” :

si ( composition == 0 ) {
console.log ( 'Les cordes sont égales' ) ;
} autre {
console.log ( 'Les cordes ne sont pas égales' ) ;
}


Production

Méthode 2 : comparaison de chaînes insensibles à la casse à l'aide des méthodes toUpperCase() et toLowerCase()

Les approches les plus utilisées pour comparer des chaînes insensibles à la casse sont la méthode toUpperCase() ou la méthode toLowerCase(). Ils convertissent les chaînes en majuscules ou en minuscules, puis les comparent à l'aide d'opérateurs d'égalité stricte.

Syntaxe

Pour la méthode toUpperCase(), utilisez la méthode suivante :

string.toUpperCase ( ) ;


Utilisez la syntaxe ci-dessous pour la méthode toLowerCase().

string.toLowerCase ( ) ;


Exemple : comparaison de chaînes insensibles à la casse à l'aide de la méthode toUpperCase()

Considérez les chaînes créées ci-dessus ' chaîne1 ' et ' chaîne2 ” puis comparez-les à l'aide de la méthode toUpperCase() avec l'opérateur d'égalité stricte :

si ( string1.toUpperCase ( ) === string2.toUpperCase ( ) ) {
console.log ( 'Les cordes sont égales' ) ;
} autre {
console.log ( 'Les cordes ne sont pas égales' ) ;
}


La sortie indique que les deux chaînes sont égales en ignorant la casse :


Exemple : comparaison de chaînes insensibles à la casse à l'aide de la méthode toLowerCase()

Ici, les chaînes sont comparées à l'aide de la méthode toLowerCase() qui va d'abord convertir les chaînes en minuscules puis les comparer à l'aide de l'opérateur === :

si ( string1.toLowerCase ( ) === chaîne2.toLowerCase ( ) ) {
console.log ( 'Les cordes sont égales' ) ;
} autre {
console.log ( 'Les cordes ne sont pas égales' ) ;
}


La sortie correspondante sera :

Méthode 3 : comparaison de chaînes insensibles à la casse à l'aide d'une expression régulière avec la méthode test()

Le JavaScript prédéfini ' test() ', qui utilise une expression régulière, est un autre moyen de comparer deux chaînes. En fonction de l'expression régulière spécifiée, il détermine si les chaînes sont égales ou non.

Syntaxe

Suivez la syntaxe donnée pour utiliser une expression régulière pour comparer les chaînes :

RegExp ( chaîne de caractères, 'gi' )


Ici,

    • ' RegExp ' signifie ' expression régulière ”.
    • ' g ” est la variable globale qui permet de vérifier toutes les chaînes.
    • ' je ” est une variable indicateur qui indique qu'une casse doit être ignorée lors de l'utilisation d'une chaîne pour correspondre au modèle.

Exemple

Tout d'abord, créez un nouvel objet de RegExp() en passant une chaîne et l'expression régulière comme argument :

var comp = nouvelle RegExp ( chaîne1, 'gi' ) ;


Comparez les chaînes à l'aide de la méthode test() :

si ( comp.test ( chaîne2 ) ) {
console.log ( 'Les cordes sont égales' ) ;
} autre {
console.log ( 'Les cordes ne sont pas égales' ) ;
}


Production

Conclusion

Pour comparer des chaînes insensibles à la casse en JavaScript, utilisez les méthodes JavaScript prédéfinies, notamment la méthode localeCompare(), les méthodes toUpperCase() et toLowerCase(), ou la méthode test() avec l'expression régulière. Les méthodes 'toUpperCase() et toLowerCase()' sont l'approche la plus utilisée pour comparer deux chaînes insensibles à la casse. Cet article a illustré les différentes manières de comparer les chaînes sans tenir compte de la casse en JavaScript.