Koodia kirjoittaessaan kehittäjä saattaa usein joutua vertailemaan kahta merkkijonoa varmistaakseen, että tietyt tehtävät on suoritettu. Merkkijonojen vertailu kiinnittämättä huomiota niiden tapauksiin, kuten isoihin ja pieniin kirjaimiin, tunnetaan vertailuna, jossa kirjainkokoa ei erotella. Monet kielet tukevat merkkijonojen vertailua kirjainkoolla ja kirjainkoolla.
Tämä artikkeli havainnollistaa menetelmiä JavaScriptin merkkijonojen vertailuun, jossa kirjainkoolla ei ole merkitystä.
Miten kirjain- ja kirjainkoolla ei ole merkitystä merkkijonojen vertailussa JavaScriptissä?
Jos haluat vertailla JavaScriptin merkkijonoja kirjainkoolla, käytä seuraavia ennalta määritettyjä menetelmiä:
-
- localeCompare()-metodi
- toUpperCase()- ja toLowerCase()-metodit
- Säännöllinen lauseke test()-menetelmällä
Katsotaanpa kunkin edellä mainitun lähestymistavan toimintaa erikseen.
Tapa 1: Kirjainkoolla välitön merkkijonojen vertailu LocaleCompare()-menetelmällä
Kirjainkoolla välittömässä merkkijonojen vertailussa käytetään ' localeCompare() ”menetelmä. Tämä menetelmä palauttaa luvun (positiivinen, negatiivinen tai nolla). Merkkijonoja verrataan lajittelujärjestyksessä, jos viitemerkkijono on pidempi kuin vertailumerkkijono tai se tulee vertailujonon jälkeen, se antaa positiivisen luvun. Jos viitemerkkijono on lyhyempi tai tulee ennen verrattua merkkijonoa, se palauttaa negatiivisen luvun. Nolla tulee palauttaa, jos viitemerkkijono vastaa verrattua merkkijonoa.
Syntaksi
Noudata localeCompare()-menetelmälle annettua syntaksia:
merkkijono1.localeVertaa ( string2, locales, options )
Tässä,
-
- ' merkkijono2 ” on vertailumerkkijono, jossa merkkijonoa 1 verrataan.
- ' paikallinen ” on kielitunniste.
- ' vaihtoehtoja ' ovat kieli-asetukset, jotka käyttäjä on antanut työskennellessään sen kanssa.
Esimerkki
Luo kaksi merkkijonoa ' merkkijono1 ' ja ' merkkijono2 ', merkkijonoilla ' linuxhint ' ja ' LinuxHint ' vastaavasti:
var merkkijono1 = 'linux' ;var string2 = 'LinuxHint' ;
Vertaa merkkijonoa1 merkkijonoon2 käyttämällä ' localeCompare() ' -menetelmää ja tallenna tulos muuttujaan ' comp ”. Menetelmän kolmas argumentti on ' herkkyys: 'perus' ', joka osoittaa, että verratut merkkijonot peruskirjaimet eivät ole erilaisia:
Tarkista ehdollisessa lauseessa, onko localeCompare()-metodin palauttama arvo nolla, se tulostaa ' Jouset ovat tasa-arvoisia ”, muuten, ” Jouset eivät ole samanarvoisia ':
console.log ( 'Jot ovat tasa-arvoisia' ) ;
} muu {
console.log ( 'Jot eivät ole samanarvoisia' ) ;
}
Lähtö
Tapa 2: Kirjainkoolla välittömän merkkijonon vertailu toUpperCase()- ja toLowerCase()-menetelmillä
Käytetyimpiä tapoja vertailla merkkijonoja, joissa kirjainkoolla ei ole merkitystä, ovat toUpperCase()- tai toLowerCase()-metodi. He muuntavat merkkijonot isoiksi tai pieniksi ja sitten vertaavat niitä tiukkojen tasa-arvooperaattoreiden avulla.
Syntaksi
Käytä toUpperCase()-menetelmää varten seuraavaa menetelmää:
string.toUpperCase ( ) ;
Käytä alla olevaa syntaksia toLowerCase()-metodille.
Esimerkki: Kirjainkoolla välittömän merkkijonon vertailu käyttäen toUpperCase()-menetelmää
Harkitse yllä luotuja merkkijonoja ' merkkijono1 ' ja ' merkkijono2 ” ja vertaa niitä sitten käyttämällä toUpperCase()-menetelmää tiukan tasa-arvooperaattorin kanssa:
jos ( string1.toUpperCase ( ) === string2.toUpperCase ( ) ) {console.log ( 'Jot ovat tasa-arvoisia' ) ;
} muu {
console.log ( 'Jot eivät ole samanarvoisia' ) ;
}
Tulos osoittaa, että molemmat merkkijonot ovat yhtä suuret jättämällä huomioimatta kirjainkokoa:
Esimerkki: Kirjainkoolla välittömän merkkijonon vertailu käyttäen toLowerCase()-menetelmää
Tässä merkkijonoja verrataan käyttämällä toLowerCase()-menetelmää, joka ensin muuntaa merkkijonot pieniksi kirjaimilla ja sitten vertaa niitä ===-operaattorilla:
jos ( string1.toLowerCase ( ) === string2.toLowerCase ( ) ) {console.log ( 'Jot ovat tasa-arvoisia' ) ;
} muu {
console.log ( 'Jot eivät ole samanarvoisia' ) ;
}
Vastaava tulos on:
Tapa 3: Kirjainkoolla välittömän merkkijonon vertailu käyttämällä säännöllistä lauseketta test()-menetelmällä
Ennalta määritetty JavaScript ' testata() ”-menetelmä, joka käyttää säännöllistä lauseketta, on toinen tapa vertailla kahta merkkijonoa. Määritetyn säännöllisen lausekkeen perusteella se määrittää, ovatko merkkijonot yhtä suuret vai eivät.
Syntaksi
Noudata annettua syntaksia käyttääksesi säännöllistä lauseketta merkkijonojen vertailuun:
RegExp ( merkkijono, 'gi' )
Tässä,
-
- ' RegExp ' tarkoittaa ' tavallinen ilme ”.
- ' g ” on globaali muuttuja, jonka avulla voidaan tarkistaa kaikki merkkijonot.
- ' i ” on lippumuuttuja, joka osoittaa, että kirjainkoko on jätettävä huomiotta, kun käytetään merkkijonoa mallin vastaamiseen.
Esimerkki
Luo ensin uusi RegExp()-objekti välittämällä merkkijono ja säännöllinen lauseke argumenttina:
var comp = uusi RegExp ( merkkijono1, 'gi' ) ;
Vertaa merkkijonoja test()-menetelmällä:
console.log ( 'Jot ovat tasa-arvoisia' ) ;
} muu {
console.log ( 'Jot eivät ole samanarvoisia' ) ;
}
Lähtö
Johtopäätös
Jos haluat vertailla JavaScriptin kirjainkoolla olevia merkkijonoja, käytä JavaScriptin ennalta määritettyjä menetelmiä, kuten localeCompare()-, toUpperCase()- ja toLowerCase()-menetelmää tai test()-menetelmää säännöllisellä lausekkeella. ToUpperCase()- ja toLowerCase()-menetelmät ovat eniten käytetty tapa vertailla kahta merkkijonoa, jossa kirjainkoolla ei ole merkitystä. Tämä artikkeli havainnollistaa erilaisia tapoja vertailla JavaScriptin merkkijonoja, kun kirjainkoolla ei ole merkitystä.