Érzéketlen karakterlánc-összehasonlítás a JavaScriptben

Erzeketlen Karakterlanc Osszehasonlitas A Javascriptben



A kód írása közben a fejlesztőnek gyakran össze kell hasonlítania két karakterláncot, hogy bizonyos feladatokat elvégezzen. A karakterláncok összehasonlítása anélkül, hogy figyelmet fordítana a kis- és nagybetűkre, a kis- és nagybetűk megkülönböztetése nélkül ismert. Sok nyelv támogatja a karakterlánc-összehasonlítást kis- és nagybetűk érzékenységgel és érzéketlenséggel.

Ez a cikk bemutatja a karakterláncok kis- és nagybetűk közötti megkülönböztetésének módszereit a JavaScriptben.







Hogyan írjunk kis- és nagybetűket az érzéketlen karakterláncok összehasonlítására JavaScriptben?

A JavaScript karakterláncainak kis- és nagybetűk közötti összehasonlításához használja a következő előre meghatározott módszereket:



    • localeCompare() metódus
    • toUpperCase() és toLowerCase() metódus
    • Reguláris kifejezés teszt() metódussal

Nézzük meg külön-külön a fent említett megközelítések működését.



1. módszer: Kis- és nagybetűk közötti karakterláncok összehasonlítása a LocaleCompare() módszerrel

A karakterláncok kis- és nagybetűk közötti összehasonlítása a „ localeCompare() ” módszerrel. Ez a módszer egy számot (pozitív, negatív vagy nulla) ad vissza. A sztringek összehasonlítása rendezési sorrendben történik, ha a referencia karakterlánc hosszabb, mint az összehasonlító karakterlánc, vagy az összehasonlított karakterlánc után jön, akkor pozitív számot ad. Ha a hivatkozási karakterlánc rövidebb, vagy az összehasonlított karakterlánc elé kerül, akkor negatív számot ad vissza. Nullát kell visszaadni, ha a referencia karakterlánc egyenértékű az összehasonlított karakterlánccal.





Szintaxis

Kövesse a localeCompare() metódushoz megadott szintaxist:



string1.localeHasonlítsa össze ( string2, locales, options )


Itt,

    • ' string2 ” az összehasonlítási karakterlánc, ahol az 1. karakterlánc kerül összehasonlításra.
    • ' helyi ” a nyelvi címke.
    • ' lehetőségek ” azok a területi beállítások, amelyeket a felhasználó adott meg, miközben dolgozik vele.

Példa

Hozzon létre két karakterláncot ' string1 ” és „ string2 ', karakterláncokkal ' linuxhint ” és „ LinuxHint ” rendre:

var string1 = 'linux' ;
var string2 = 'LinuxHint' ;


Hasonlítsa össze a string1-et a string2-vel a ' localeCompare() ' metódus, és tárolja az eredményt egy változóban ' comp ”. A metódus harmadik argumentuma a következő lesz érzékenység: 'alap' ', amely az összehasonlított karakterláncokat jelzi, az alapbetűk nem különböznek egymástól:

var comp = string1.localeCompare ( string2, undefined, { érzékenység: 'bázis' } )


A feltételes utasításban ellenőrizze, hogy a localeCompare() metódus visszaadott értéke nullával egyenértékű-e, kiírja a ' A húrok egyenlőek ', más, ' A húrok nem egyenlőek ”:

ha ( komp == 0 ) {
console.log ( 'A húrok egyenlőek' ) ;
} más {
console.log ( 'A húrok nem egyenlőek' ) ;
}


Kimenet

2. módszer: Kis- és nagybetűk közötti karakterláncok összehasonlítása toUpperCase() és toLowerCase() metódussal

A kis- és nagybetűket nem érzékeny karakterláncok összehasonlításának leggyakrabban használt megközelítései a toUpperCase() metódus vagy a toLowerCase() Method. A karakterláncokat nagy- vagy kisbetűssé alakítják, majd szigorú egyenlőségi operátorok segítségével összehasonlítják őket.

Szintaxis

A toUpperCase() metódushoz használja a következő metódust:

string.toUpperCase ( ) ;


Használja az alábbi szintaxist a toLowerCase() metódushoz.

string.toLowerCase ( ) ;


Példa: Kis- és nagybetűkre nem érzékeny karakterláncok összehasonlítása toUpperCase() metódussal

Tekintsük a fent létrehozott karakterláncokat ' string1 ” és „ string2 ”, majd hasonlítsa össze őket a toUpperCase() metódussal szigorú egyenlőségi operátorral:

ha ( string1.toUpperCase ( ) === string2.toUpperCase ( ) ) {
console.log ( 'A húrok egyenlőek' ) ;
} más {
console.log ( 'A húrok nem egyenlőek' ) ;
}


A kimenet azt jelzi, hogy mindkét karakterlánc egyenlő a kis- és nagybetűk figyelmen kívül hagyásával:


Példa: Kis- és nagybetűk közötti karakterláncok összehasonlítása toLowerCase() metódussal

Itt a karakterláncokat a toLowerCase() metódussal hasonlítjuk össze, amely először kisbetűssé alakítja a karakterláncokat, majd összehasonlítja őket az === operátor használatával:

ha ( string1.toLowerCase ( ) === string2.toLowerCase ( ) ) {
console.log ( 'A húrok egyenlőek' ) ;
} más {
console.log ( 'A húrok nem egyenlőek' ) ;
}


A megfelelő kimenet a következő lesz:

3. módszer: Kis- és nagybetűket nem érzékeny karakterláncok összehasonlítása reguláris kifejezéssel a teszt() módszerrel

Az előre definiált JavaScript ' teszt() ” metódus, amely reguláris kifejezést használ, egy másik módja a két karakterlánc összehasonlításának. A megadott reguláris kifejezés alapján meghatározza, hogy a karakterláncok egyenlőek-e vagy sem.

Szintaxis

Kövesse a megadott szintaxist a reguláris kifejezés használatához a karakterláncok összehasonlításához:

RegExp ( húr, 'GI' )


Itt,

    • ' RegExp '' jelentése' reguláris kifejezés ”.
    • ' g ” az a globális változó, amely lehetővé teszi az összes karakterlánc ellenőrzését.
    • ' én ” egy zászlóváltozó, amely azt jelzi, hogy a kis- és nagybetűket figyelmen kívül kell hagyni, miközben karakterláncot használunk a mintához.

Példa

Először hozzon létre egy új RegExp() objektumot egy karakterlánc és a reguláris kifejezés argumentumként történő átadásával:

var comp = új RegExp ( string1, 'GI' ) ;


Hasonlítsa össze a karakterláncokat a test() metódussal:

ha ( komp.teszt ( string2 ) ) {
console.log ( 'A húrok egyenlőek' ) ;
} más {
console.log ( 'A húrok nem egyenlőek' ) ;
}


Kimenet

Következtetés

A JavaScriptben a kis- és nagybetűket nem érzékeny karakterláncok összehasonlításához használja a JavaScript előre definiált metódusait, beleértve a localeCompare() metódust, a toUpperCase() és toLowerCase() metódust, vagy a test() metódust a reguláris kifejezéssel. A „toUpperCase() és toLowerCase()” metódusok a leggyakrabban használt megközelítések két kis- és nagybetűket nem érzékeny karakterlánc összehasonlítására. Ez a cikk bemutatta a karakterláncok kis- és nagybetűk megkülönböztetésének különböző módjait a JavaScriptben.