Hogyan hasonlítsunk össze két karakterláncot a JavaScriptben

Hogyan Hasonlitsunk Ossze Ket Karakterlancot A Javascriptben



[Vannak olyan helyzetek, amikor a fejlesztőknek két karakterláncot kell összehasonlítaniuk. A legtöbb programozó gyakran elköveti azt a hibát, hogy megpróbálja összehasonlítani a karakterláncait JavaScriptben az == operátor használatával. Az == operátornak vannak korlátozásai ebben a helyzetben, mivel a változótípusok nem érvényesíthetők vele. Ezért előfordulhat, hogy más módszereket kell keresnie a helyzet kezelésére.

Ez a cikk bemutatja a karakterláncok JavaScriptben történő összehasonlításának eljárását.







Hogyan hasonlítsunk össze két karakterláncot a JavaScriptben?

Két JavaScript-sztring összehasonlításához használja a következő felsorolt ​​módszereket:



Vizsgáljuk meg az egyes módszerek működését külön-külön.



1. módszer: Hasonlítson össze két karakterláncot szigorú egyenlőség operátorral

A szigorú egyenlőség operátor (===) használható annak ellenőrzésére, hogy a karakterláncok egyenlőek-e vagy sem. Ha a karakterláncok különböznek, akkor false értéket ad vissza kimenetként; különben igazat ad. Mivel ez egy kis- és nagybetű érzékeny módszer, a karakterláncok összehasonlítása során a betűk kis- és nagybetűit is összehasonlítja, ami azt jelenti, hogy a kis- és nagybetűket különbözőnek tekintjük.





Szintaxis

Használja az alábbi szintaxist két karakterlánc összehasonlításához a szigorú egyenlőség operátor használatával:

str1 === str2 ;

Itt a „ === ” operátor összehasonlítja az str1 és str2 értékét és adattípusát.



Példa

Ebben a példában összehasonlítjuk a két karakterláncot, az egyik nagybetűs, a másik kisbetűs. Ehhez először két változót hozunk létre „str1” és „str2” amely karakterláncokat tárol' LinuxHint ” és „ linuxhint ”:

volt str1 = 'LinuxHint' ;
volt str2 = 'linux' ;

Ezután hívja a ' console.log() ” módszer az eredmény kinyomtatására, amely megmondja, hogy a karakterláncok egyenlőek-e vagy sem a „ === ' operátor:

konzol. log ( str1 === str2 ) ;

A kimeneten megjelenik: „ hamis ', ami azt jelzi, hogy a karakterláncok nem egyenlőek, mert az egyenlőség operátor kis- és nagybetűk közötti összehasonlítást hajt végre:

Ha kis- és nagybetűket nem érző összehasonlítást szeretne végezni a karakterláncok között, kövesse az alábbi módszereket.

2. módszer: Hasonlítson össze két karakterláncot a localeCompare() módszerrel

' localeCompare() ” egy JavaScript előre definiált módszer, amelyet két karakterlánc összehasonlítására használnak. Kis- és nagybetűket nem érzékeny karakterlánc-összehasonlítást hajt végre, és az aktuális területi beállítást használja két karakterlánc összehasonlításához.

Szintaxis

Kövesse az alábbi szintaxist két karakterlánc összehasonlításához a localeCompare() metódussal:

str1. localeCompare ( str2 ) ;

Itt, ' str2 ' az a karakterlánc, amelyet a következővel fognak összehasonlítani str1 ”:

Példa

Most ugyanazokat a karakterláncokat fogjuk használni, amelyeket az előző példában már létrehoztunk, majd összehasonlítjuk őket a ' localeCompare() ” módszer a feltételes operátor segítségével:

ha ( str1. localeCompare ( str2 ) ) {
konzol. log ( 'str1 egyenlő str2-vel' ) ;
} más {
konzol. log ( 'str1 nem egyenlő str2-vel' ) ;
}

Amint látható, a kimenet azt jelzi, hogy a karakterláncok egyenlőek, mivel a módszer összehasonlítja a kis- és nagybetűk közötti összehasonlítást:

Térjünk át a következő módszerre!

3. módszer: Hasonlítson össze két karakterláncot a RegExp használatával a test() módszerrel

Van egy másik módszer is két karakterlánc összehasonlítására, amely a kis- és nagybetűk megkülönböztetését is végrehajtja, az úgynevezett ' RegExp ' segítségével a ' teszt() ” módszerrel. Ellenőrzi a karakterláncok egyenlőségét a definiált reguláris kifejezés alapján. A test() metódus egy karakterláncot fogad el argumentumként az összehasonlításhoz.

Szintaxis

Kövesse a test() metódus megadott szintaxisát a RegEx és a test() metódus használatával:

regPattern. teszt ( str2 ) ;

Itt, ' str2 ' az a karakterlánc, amelyet a következővel fognak összehasonlítani regPattern ”:

Példa

Most létrehozzuk a RegExp egy példányát egy karakterlánc átadásával str1 'és egy reguláris kifejezés' GI ', amely jelzi a kis- és nagybetűk közötti összehasonlítást, és egy változóban tárolja regPattern ”:

volt regPattern = új RegExp ( str1 , 'GI' ) ;

Ezt követően hívjuk a „ teszt() 'metódus a karakterlánc átadásával' str2 ” érvként.

volt év = regPattern. teszt ( str2 ) ;

Ezután a feltételes utasítással ellenőrizze, hogy a karakterláncok egyenlőek-e vagy sem:

ha ( év ) {
konzol. log ( 'str1 egyenlő str2-vel' ) ;
} más {
konzol. log ( 'str1 nem egyenlő str2-vel' ) ;
}

Kimenet

Ha egy karakterláncot szeretne összehasonlítani egy másik karakterlánccal, akkor kövesse az alábbi részt.

4. módszer: Hasonlítson össze két karakterláncot az include() módszerrel

Annak meghatározására, hogy a karakterlánc a másik karakterlánc részkarakterlánca-e, a JavaScript egy előre definiált metódust biztosít, amelyet a ' magába foglalja() ” módszerrel. Egy karakterláncot vesz fel argumentumként, és logikai értéket ad ' igaz ” ha létezik a karakterláncban; különben visszatér' hamis ”.

Szintaxis

Kövesse az alábbi módszert az include() metódus használatához:

str1. magába foglalja ( str2 ) ;

Itt, ' str2 ' az a karakterlánc, amely ellenőrzi, hogy benne van-e vagy része a ' str1 ”:

Példa

Itt először két karakterláncot hozunk létre, „str1” és „str2” és ellenőrizze, hogy a második karakterlánc az első részkarakterlánca-e vagy sem:

volt str1 = 'LinuxHint' ;
volt str2 = 'ban ben' ;

Ehhez hívja a Az 'includes()' metódus az 'str2' átadásával érvként:

konzol. log ( str1. magába foglalja ( str2 ) ) ;

A kimenet a következőt adja: igaz ', ami azt jelzi, hogy a ' str2 ' része a ' str1 ”:

Összeállítottuk az összes módszert két JavaScript-sztring összehasonlítására.

Következtetés

Két JavaScript-sztring összehasonlításához használhatja a localeCompare() metódust, a szigorú egyenlőség operátort, a RegEx a test() metódussal vagy az include() metódust. A szigorú egyenlőség operátor a kis- és nagybetűk megkülönböztetését végzi, míg a test() metódus és a localeCompare() metódus a kis- és nagybetűk megkülönböztetését. Végül az include() metódus egy másik karakterlánc részkarakterláncaként ellenőrzi a karakterláncot. Ebben a cikkben bemutattuk a JavaScript két karakterláncának összehasonlításának módszereit megfelelő példákkal.