virkne = "LOL"; console.log(string.includes("lol")); // atgriež false console.log(string.includes("LOL")); // atgriež patiesuMetode include() nosaka, vai vienu virkni var atrast citā virknē, vajadzības gadījumā atgriežot patiesu vai nepatiesu.
Sintakse: -string.includes(meklēšanas virkne[, pozīcija])
searchString: — virkne, kas jāmeklē šajā virknē.
pozīcija: -Papildus. Pozīcija šajā virknē, kurā meklēt searchString; noklusējuma 0.
Man ir iepirkumu grozs, kura nolaižamajā izvēlnē ir redzamas produktu opcijas, un, ja tiek atlasīts "jā", es vēlos, lai daži citi lapas lauki būtu redzami.
Problēma ir tā, ka iepirkumu grozā tekstā ir iekļauts arī cenas modifikators, kas katrai precei var būt atšķirīgs. Darbojas šāds kods:
$(document).ready(function() ( $("select").change(function() ( var str = $("select option:selected").text(); if (str == "Jā (+ $6,95)") ( $(".gravēšana").show(); ) else ( $(".gravējums").hide(); ) )); ));
Tomēr es gribētu izmantot kaut ko līdzīgu šim, kas nedarbojas:
$(dokuments).ready(function() ( $("select").change(function() ( var str = $("select option:selected").text(); if (str *= "Jā") ( $(.gravēšana").show(); ) else ( $(.graving").hide(); ) ));
Es vēlos veikt darbību tikai tad, ja atlasītajā opcijā ir vārds "Jā" un tiek ignorēts cenas modifikators.
Kad tu raksti JavaScript, ļoti bieži nākas sērfot internetā, meklējot informāciju par metožu sintaksi un parametriem, kas strādā ar virknēm.
Esmu lasījis daudzus rakstus par darbu ar stīgām. Šajā rakstā tiks parādīti piemēri un īsi apraksti visizplatītākās metodes darbam ar stīgām. Esmu mēģinājis visbiežāk izmantotās metodes ievietot augšpusē ātrai uzziņai.
Protams, lielākā daļa pieredzējušo izstrādātāju jau būs labi pazīstami ar daudzām metodēm, bet es domāju, ka tas labs saraksts iesācējiem, lai izprastu paņēmienu klāstu, kas var palīdzēt veikt sarežģītas darbības ar vienkāršiem līdzekļiem.
Varat pārvērst skaitli, Būla izteiksmi vai objektu par virkni:
Var myNumber = 24; // 24 var myString = myNumber.toString(); // "24"
To var izdarīt tāpat ar Virkne():
Var myNumber = 24; // 24 var myString = String(mansNumurs); // "24"
Ja neesat pārliecināts, kāda vērtība nav null vai nenoteikts, varat izmantot Virkne(), kas vienmēr atgriež virkni neatkarīgi no vērtības veida.
Lai sadalītu virknes apakšvirkņu masīvā, varat izmantot šo metodi sadalīt ():
Var myString = "coming,at,at,the,commas"; var substringArray = myString.split(","); // ["nāk", "apart", "at", "the", "commas"] var arrayLimited = myString.split(",", 3); // ["nāk", "atšķiras", "pie"]
Kā redzat pēdējā rindā, otrais funkcijas parametrs ir to elementu skaita ierobežojums, kas būs galīgajā masīvā.
Lai uzzinātu, cik rakstzīmju ir virknē, mēs izmantojam rekvizītu garums:
Var myString = "Tu esi diezgan labs raksturs."; var stringLength = myString.length; // 25
Ir divas apakšvirknes meklēšanas metodes:
Lietošana indexOf():
Var stringOne = "Džonijs Valdo Harisons Valdo"; var wheresWaldo = stringOne.indexOf("Valdo"); // 7
indexOf() Metode sāk meklēt apakšvirkni no virknes sākuma un atgriež apakšvirknes pirmās parādīšanās sākuma pozīciju. Šajā gadījumā - 7. pozīcija.
Lietošana LastIndexOf():
Var stringOne = "Džonijs Valdo Harisons Valdo"; var wheresWaldo = stringOne.lastIndexOf("Valdo"); // 22
Metode atgriež apakšvirknes pēdējās gadījuma sākuma pozīciju virknē.
Abas metodes atgriež -1, ja apakšvirkne netiek atrasta, un abas izmanto neobligātu otro argumentu, kas norāda pozīciju virknē, kurā vēlaties sākt meklēšanu. Tātad, ja otrais arguments ir "5", indexOf() sāk meklēšanu no 5. rakstzīmes, ignorējot rakstzīmes 0-4, kamēr LastIndexOf() sāk meklēšanu no 5. rakstzīmes un darbojas atpakaļgaitā, ignorējot rakstzīmes 6 un tālāk.
Lai aizstātu apakšvirknes gadījumu virknē ar citu apakšvirkni, varat izmantot aizstāt ():
Var slugger = "Džošs Hamiltons"; var betterSlugger = slugger.replace("h Hamilton", "e Bautista"); konsole.log(betterSlugger); // "Hosē Bautista"
Pirmais arguments ir tas, ko vēlaties aizstāt, un otrais arguments ir jaunrinda. Funkcija aizstāj tikai pirmo apakšvirknes gadījumu virknē.
Lai aizstātu visus gadījumus, jums ir jāizmanto regulāra izteiksme ar globālu karogu:
Var myString = "Viņa pārdod automobiļu korpusus automobiļu krastā"; var newString = myString.replace(/automotive/g, "jūra"); console.log(newString); // "Viņa pārdod jūras gliemežvākus jūras krastā"
Otrais arguments var ietvert īpašu veidni vai funkciju. Jūs varat lasīt vairāk.
Mēs varam iegūt simbolu, izmantojot funkciju charAt():
Var myString = "Spalvas putni"; var whatsAtSeven = myString.charAt(7); // "f"
Kā tas bieži notiek JavaScript, pirmā pozīcija virknē sākas ar 0, nevis 1.
Kā alternatīvu funkciju varat izmantot charCodeAt() funkcija, kas ir rakstzīmju kods.
Var myString = "Spalvas putni"; var whatsAtSeven = myString.charCodeAt(7); // "102" var whatsAtEleven = myString.charCodeAt(11); // "70"
Ņemiet vērā, ka rakstzīmes "F" kods (11. pozīcija) atšķiras no rakstzīmes "f" (7. pozīcija).
Vairumā gadījumu virkņu savienošanai varat izmantot operatoru "+". Bet jūs varat arī izmantot metodi concat ():
Var stringOne = "Knibb High football"; var stringTwo = stringOne.concat("noteikumi."); // "Knibb High futbola noteikumi"
Tādā veidā mēs varam apvienot daudzas rindas vienā secībā, kādā tās ir rakstītas:
Var stringOne = "Knibb"; var stringTwo = "Augsta"; var stringThree = "futbols"; var stringFour = "noteikumi."; var finalString = stringOne.concat(stringTwo, virkneTrīs, stringFour); console.log(finalString); // "Knibb augstie futbola noteikumi."
Ir 3 veidi, kā iegūt virkni no citas virknes daļas:
Izmantojot šķēle ():
Var stringOne = "abcdefghijklmnopqrstuvwxyz"; var stringTwo = stringOne.slice(5, 10); // "fghij"
Izmantojot apakšvirkne():
Var stringOne = "abcdefghijklmnopqrstuvwxyz"; var stringTwo = stringOne.substring(5, 10); // "fghij"
Abās funkcijās pirmais parametrs ir rakstzīme, ar kuru sākas apakšvirkne (sākot no 0 pozīcijas), un otrais arguments (neobligāts) ir rakstzīmes pozīcija, līdz kurai apakšvirkne tiek atgriezta. Piemērs (5, 10) atgriež virkni starp 5. un 9. pozīcijām.
Izmantojot substr():
Var stringOne = "abcdefghijklmnopqrstuvwxyz"; var stringTwo = stringOne.substr(5, 10); // "fghijklmno"
Pirmais arguments ir rakstzīmes pozīcija, kurā sākas jaunā rinda, un otrais arguments ir rakstzīmju skaits no jaunās rindas sākuma pozīcijas. Tie. (5, 10) atgriež 10 rakstzīmes, sākot no 5. pozīcijas.
Ir 4 tulkošanas metodes. Pirmie 2 pārvērš virkni par lielajiem burtiem:
Var stringOne = "Runājiet, es jūs nedzirdu."; var stringTwo = stringOne.toLocaleUpperCase(); // "RUNĀ, ES NEdzirdu" var stringThree = stringOne.toUpperCase(); // "RUNĀ, ES TEVI NEdzirdu"
Pārējie 2 pārvērš virkni uz mazajiem burtiem:
Var stringOne = "JUMS NAV"JĀKliedz"; var stringTwo = stringOne.toLocaleLowerCase(); // "jums nav jākliedz" var stringThree = stringOne.toLowerCase(); // "tev nav jākliedz"
Labāk ir izmantot "lokālās" metodes, jo... dažādās vietās, piemēram, Turcijā, reģistru attēlošana nedarbojas gluži tā, kā mēs esam pieraduši, un tāpēc rezultāts var būt tāds, kādu mēs vēlējāmies. Ja izmantojat “lokālās” metodes, tad šādu problēmu nebūs.
Rakstu saskaņošanu virknē var veikt, izmantojot 2 metodes, kas darbojas atšķirīgi.
Metode atbilst() tiek lietots virknei un kā parametrs tiek izmantota regulāra izteiksme:
Var myString = "Cik daudz koksnes varētu ievilkt koka patrona"; var myPattern = /.ood/; var myResult = myString.match(myPattern); // ["koksne"] var patternLocation = myResult.index; // 9 var originalString = myResult.input // "Cik daudz koksnes varētu ievilkt koka patrona"
Metode izpildīt() tiek lietots regulārās izteiksmes objektam un kā parametrs tiek izmantota virkne:
Var myString = "Cik daudz koksnes varētu ievilkt koka patrona"; var myPattern = /.huck/; var myResult = myPattern.exec(myString); // ["čaks"] var patternLocation = myResult.index; // 27 var originalString = myResult.input // "Cik daudz koksnes varētu ievilkt koka patrona"
Abās metodēs tiek atgriezta tikai pirmā atbilstība. Ja nav sakritību, tas atgriežas null.
Varat arī izmantot metodi meklēt () kas izmanto regulāru izteiksmi un atgriež pirmās atbilstības pozīciju shēmā:
Var myString = "Pieņemt"; var patternLocation = myString.search(/ume/); // 3
Ja nebūtu sakritību, " -1 «.
Varat salīdzināt 2 virknes, lai noteiktu, kura alfabētā ir pirmā. Lai to izdarītu, mēs izmantosim metodi localeCompare() kas atgriež 3 iespējamās vērtības:
Var myString = "vista"; var myStringTwo = "ola"; var whichCameFirst = myString.localeSalīdzināt(manaStringTwo); // -1 (Chrome atgriež -2) whichCameFirst = myString.localeCompare("vista"); // 0 whichCameFirst = myString.localeCompare("ābols"); // 1 (Chrome atgriež 2)
Kā parādīts iepriekš, tiek atgriezts negatīvs skaitlis, ja virknes arguments nāk aiz sākotnējās virknes. Pozitīvs skaitlis, ja virknes arguments ir pirms sākotnējās virknes. Ja atgrieztos 0 - nozīmē, ka līnijas ir vienādas.
Lai pārbaudītu atgriešanās vērtību, labāk izmantot if (rezultāts< 0), чем if (result === -1). Последнее не будет работать в Chrome.
Paldies par uzmanību, ceru, ka uzzinājāt daudz jauna un interesanta!
Raksta autors: Alekss. Kategorija:Ir vairāki veidi, kā atlasīt apakšvirknes JavaScript, tostarp apakšvirkne(), substr(), šķēle () un funkcijas regexp.
JavaScript 1.0 un 1.1, apakšvirkne() pastāv kā vienīgais vienkāršais veids, kā atlasīt daļu no lielākas virknes. Piemēram, lai izvēlētos līniju nospiediet no Izteiksme, izmantojiet "Izteiksme".apakšvirkne(2,7). Pirmais funkcijas parametrs ir rakstzīmju indekss, ar kuru sākas atlase, bet otrais parametrs ir rakstzīmju indekss, ar kuru atlase beidzas (neietverot): apakšvirkne(2,7) ietver indeksu 2, 3, 4, 5 un 6.
JavaScript 1.2, funkcijas substr(), šķēle () Un regexp var izmantot arī stīgu sadalīšanai.
Substr() uzvedas tāpat kā apakšstr Pearl valoda, kur pirmais parametrs norāda rakstzīmju indeksu, ar kuru sākas atlase, bet otrais parametrs norāda apakšvirknes garumu. Lai veiktu to pašu uzdevumu kā iepriekšējā piemērā, jums jāizmanto "Izteiksme".substr(2,5). Atcerieties, ka 2 ir sākuma punkts, bet 5 ir iegūtās apakšvirknes garums.
Lietojot uz stīgām, šķēle () uzvedas līdzīgi kā funkcijai apakšvirkne(). Tomēr tas ir daudz jaudīgāks un spēj strādāt ar jebkura veida masīviem, ne tikai ar virknēm. šķēle () izmanto arī negatīvas nobīdes, lai piekļūtu vēlamajai pozīcijai, sākot no rindas beigām. "Izteiksme".slice(2,-3) atgriezīs apakšvirkni, kas atrasta starp otro un trešo rakstzīmi no beigām, atgriežoties vēlreiz nospiediet.
Pēdējā un universālākā metode darbam ar apakšvirknēm ir darbs, izmantojot regulārās izteiksmes funkcijas JavaScript versijā 1.2. Vēlreiz pievēršot uzmanību tam pašam piemēram, apakšvirknei "spied" iegūts no virknes "Izteiksme":
Write("Izteiksme".match(/press/));
Objekts StīgaŠī ir primitīvas virknes vērtības objekta realizācija. Tā konstruktors izskatās šādi:
Jauna virkne( nozīmē?)
Šeit nozīmē jebkura virknes izteiksme, kas norāda objekta primitīvo vērtību. Ja nav norādīts, objekta primitīvā vērtība ir "" .
Atgriež objekta primitīvo vērtību. String objekta nestandarta metodes Izveido HTML grāmatzīmi (
Metode HTML hipersaite garuma īpašums Sintakse objektu .garums Atribūti : (DontEnum, DontDelete, ReadOnly)") .
Metode ir rakstzīmju skaits rindā. Tukšai virknei šī vērtība ir nulle. enkura metode garuma īpašums Sintakse .anchor(
Metode Rezultāts: virknes vērtība garuma īpašums Sintakse enkurs
Metode .: virknes vērtība garuma īpašums Sintakse . Nav iespējams pārbaudīt, vai sākotnējā virkne jau ir iekļauta šajos tagos. Šī metode tiek izmantota kopā ar document.write un document.writeln metodēm, lai parādītu tekstu treknrakstā. Piemēram, operators document.write("Mans teksts".bold()) parādīs rindu .
Metode jebkura skaitliska izteiksme charAt atgriež virkni, kas sastāv no rakstzīmes, kas atrodas dotajā pozīcijas garuma īpašums primitīva virknes vērtība Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu.. Līnijas rakstzīmju pozīcijas ir numurētas no nulles līdz
Metode jebkura skaitliska izteiksme.charCodeAt( atgriež virkni, kas sastāv no rakstzīmes, kas atrodas dotajā pozīcijas garuma īpašums skaitliskā vērtība Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu. atgriež skaitli, kas vienāds ar norādītajā rakstzīmes unikoda kodu . Līnijas rakstzīmju pozīcijas ir numurētas no nulles līdz. -1.
Metode līnija0 rinda1
Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu. + . + Piemēram, operators document.write("String".charCodeAt(0).toString(16)) pārlūkprogrammas ekrānā parādīs krievu burta "C" heksadecimālo kodu: 421. + + concat metodestringN
Metode atgriež jaunu virkni, kas ir sākotnējās virknes un metodes argumentu savienošana. Šī metode ir līdzvērtīga darbībai: virknes vērtība garuma īpašums Sintakse Piemēram, operators document.write("Sals un saule.".concat("Brīnišķīga diena.")) pārlūkprogrammas ekrānā parādīs rindu Frost and sun. Tā ir brīnišķīga diena.
Metode Nav iespējams pārbaudīt, vai sākotnējā virkne jau ir iekļauta šajos tagos. Šī metode tiek izmantota kopā ar document.write un document.writeln metodēm, lai parādītu tekstu teletaipa fontā. Piemēram, priekšraksts document.write("Mans teksts".fixed()) pārlūkprogrammas ekrānā parādīs virkni Mans teksts.: virknes vērtība garuma īpašums Sintakse fiksēts> fontu krāsu metode
Metode .: virknes vērtība garuma īpašums Sintakse .
Metode skaitliskās izteiksmes no CharCode izveido jaunu virkni (bet ne virknes objektu), kas ir konkatenācija Unikoda rakstzīmes : String.fromCharCode(, kods1, , kods2.
ar kodiem StīgaŠī ir objekta statiska metode
, tāpēc jums nav īpaši jāizveido virknes objekts, lai tam piekļūtu. Piemērs:
Metode : skaitliskā vērtība indekssOf atgriež pirmo pozīciju apakšvirknes garuma īpašums. Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu. apakšvirkne apakšvirkne apakšvirkne apakšvirkne primitīvā virknes vērtībā Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu. Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu.
vairāk nekā
Meklēšana tiek veikta no kreisās puses uz labo. Pretējā gadījumā šī metode ir identiska metodei.
Metode slīpraksta metode: virknes vērtība garuma īpašums Sintakse .italics() slīpraksts. Nav iespējams pārbaudīt, vai sākotnējā virkne jau ir iekļauta šajos tagos. Šī metode tiek izmantota kopā ar document.write un document.writeln metodēm, lai parādītu tekstu treknrakstā. Piemēram, operators document.write("Mans teksts".bold()) parādīs rindu .
Metode . Piemēram, operators document.write("Mans teksts". slīpraksts()) parādīs rindu lastIndexOf metode atgriež pirmo pozīciju.lastIndexOf( garuma īpašums Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu. LastIndexOf apakšvirkne atgriež pēdējo pozīciju apakšvirkne primitīvās virknes vērtībā apakšvirkne. -1. Ja ir norādīts neobligāts arguments, tad meklēšana tiek veikta, sākot no pozīcijas apakšvirkne primitīvā virknes vērtībā Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu.; Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu. ja nē, tad no 0. pozīcijas, t.i., no rindas pirmās rakstzīmes. Ja
negatīvs, tad tas tiek pieņemts
vienāds ar nulli
Metode Meklēšana tiek veikta no labās uz kreiso pusi. Pretējā gadījumā šī metode ir identiska metodei.: virknes vērtība garuma īpašums Sintakse Piemērs: . -1. Var n = "Baltais valis".lastIndexOf("valis"); // n ir vienāds ar 6 : (DontEnum, DontDelete, ReadOnly)") .
Atbalsts
Metode localeSalīdzināt salīdzina divas virknes, ņemot vērā operētājsistēmas nacionālos iestatījumus. Tas atgriež -1, ja primitīva vērtība garuma īpašums mazāk līnijas1, +1, ja tas ir lielāks līnijas1, un 0, ja šīs vērtības ir vienādas.
Metode atbilst regvyr garuma īpašums. Atbilstības rezultāts ir atrasto apakšvirkņu masīvs vai null, ja nav sērkociņu. Šajā gadījumā:
Jāatceras, ka metode regvyr.izpild maina objekta īpašības regvyr. Piemēri:
Metode aizstāt atbilst regulārai izteiksmei regvyr ar primitīvu virknes vērtību garuma īpašums un aizstāj atrastās apakšvirknes ar citām apakšvirknēm. Rezultātā tiek iegūta jauna virkne, kas ir oriģinālās virknes kopija ar veiktajām nomaiņām. Aizstāšanas metodi nosaka globālās meklēšanas opcija regvyr un otrā argumenta veids.
Ja regvyr nesatur globālās meklēšanas opciju, tad tiek meklēta pirmā atbilstošā apakšvirkne regvyr un tas tiek aizstāts. regvyr Ja regvyr satur globālās meklēšanas opciju, pēc tam atbilst visas apakšvirknes
līnija, un tie tiek aizstāti. , tad katra atrastā apakšvirkne tiek aizstāta ar to. Šajā gadījumā rindā var būt šādas objekta īpašības RegExp
, piemēram, $1 , , $9 , lastMatch , lastParen , leftContext un rightContext . funkciju Piemēram, operators document.write("Garšīgi āboli, sulīgi āboli.".replace(/āboli/g, "bumbieri")) pārlūkprogrammas ekrānā parādīs virkni Gardi bumbieri, sulīgi bumbieri. regvyr, kas ir ievietots iekavās, priekšpēdējais arguments ir atrastās apakšvirknes pozīcija avota virknē, skaitot no nulles, un pēdējais arguments ir pati avota virkne. Šis piemērs parāda, kā izmantot metodi aizstāt jūs varat uzrakstīt funkciju, lai pārvērstu Fārenheita grādu pēc Celsija. Dotais scenārijs
Funkcija myfunc($0,$1) ( return (($1-32) * 5/9) + "C"; ) funkcija f2c(x) ( var s = String(x); return s.replace(/(\d+() \.\d*)?)F\b/, myfunc ) document.write(f2c("212F"));
pārlūkprogrammas ekrānā tiks parādīta līnija 100C.
Lūdzu, ņemiet vērā, ka šī metode maina objekta īpašības regvyr.
Visu apakšvirknes gadījumu aizstāšana virknē
Bieži gadās, ka jums ir jāaizstāj visi vienas virknes gadījumi ar citu virkni:
Var str = "foobarfoobar"; str=str.replace(/foo/g,"xxx"); // rezultāts būs str = "xxxbarxxxbar";
Metode meklēt atbilst regulārai izteiksmei regvyr ar primitīvu virknes vērtību garuma īpašums. Atbilstības rezultāts ir pirmās atrastās apakšvirknes pozīcija, skaitot no nulles vai -1, ja atbilstības nav. Tajā pašā laikā tiek parādīta globālās meklēšanas opcija regvyr tiek ignorēts, un īpašības regvyr nemaina.
Metode jebkādas skaitliskās izteiksmes garuma īpašumsšķēle apakšvirkne, no pozīcijas .slice( pozicionēt .slice( apakšvirkne, to neiekļaujot. Ja
un līdz sākotnējās rindas beigām. Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu. Līnijas rakstzīmju pozīcijas ir numurētas no nulles līdz apakšvirkne Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu.. +apakšvirkne. -1. .slice( Ja vērtība Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu.. +.slice(.
Ja vērtība
Metode Citiem vārdiem sakot, negatīvie argumenti tiek uzskatīti par nobīdēm no virknes beigām.: virknes vērtība garuma īpašums Sintakse Rezultāts ir virknes vērtība, nevis virknes objekts. Piemēram, paziņojums document.write("ABCDEF".slice(2,-1)) pārlūkprogrammas ekrānā izdrukās virkni CDE.
Metode atdalītājs numuru garuma īpašums virkne vai regulāra izteiksme : virknes masīvs(objekts. Kad tā ir atrasta, apakšvirkne no iepriekšējā norobežotāja beigām (vai no rindas sākuma, ja šī ir pirmā atdalītāja parādīšanās) līdz atrastā sākuma virknei tiek pievienota apakšvirknes masīvam. Tādējādi pats atdalītājs apakšvirknes tekstā neparādās.
Izvēles arguments . norāda iegūtā masīva maksimālo iespējamo izmēru. Ja ir norādīts, tad pēc atlases cipariem Apakšvirknes metode tiek izvadīta pat tad, ja sākotnējās virknes skenēšana nav pabeigta.
Atdalītājs var norādīt kā virkni vai kā regulāru izteiksmi. Ir vairāki gadījumi, kas prasa īpašu uzmanību:
Nākamajā piemērā, lai norādītu, tiek izmantota regulārā izteiksme HTML tagi kā atdalītājs. Operators
pārlūkprogrammas ekrānā tiks parādīta rinda Teksts, treknrakstā un slīprakstā.
Metode streikot: virknes vērtība garuma īpašums Sintakse
.
Metode .sub(): virknes vērtība garuma īpašums Sintakse apakš
Metode apakšstr.substr( garuma īpašums garums atgriež virkni, kas sastāv no rakstzīmes, kas atrodas dotajā atgriež virknes primitīvās vērtības apakšvirkni substr metode sākot ar šo substr metode un satur atgriež virkni, kas sastāv no rakstzīmes, kas atrodas dotajā rakstzīmes. Ja substr metode nav norādīts, tad tiek atgriezta apakšvirkne, sākot no dotās
un līdz sākotnējās rindas beigām. Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu. un līdz sākotnējās rindas beigām. Ja .charAt( ir negatīvs vai nulle, tiek atgriezta tukša virkne. Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu.. -1. .charAt( Ja Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu..+.charAt(.
lielāks par vai vienāds ar., pēc tam tiek atgriezta tukša virkne. Ja .charAt( ir negatīvs, tad tas tiek interpretēts kā nobīde no rindas beigām, t.i., to aizstāj ar Piezīme. Ja
tad ir negatīvs
Metode Var src = "abcdef"; var s1 = src.substr(1, 3); // "bcd" var s2 = src.substr(1); // "bcdef" var s3 = src.substr(-1); // "f", bet MSIE: "abcdef".substr( garuma īpašumsšķēle apakšvirkne, no pozīcijas .slice( pozicionēt .slice( apakšvirknes metode apakšvirkne, to neiekļaujot. Ja
un līdz sākotnējās rindas beigām. Pārvērš visus virknes burtus par lielajiem burtiem, ņemot vērā operētājsistēmas valodu..substring( . Līnijas rakstzīmju pozīcijas ir numurētas no nulles līdz apakšvirkne apakšvirkne nav norādīts, tad tiek atgriezta apakšvirkne, sākot no pozīcijas . -1. Negatīvi argumenti vai līdzvērtīgi apakšvirkne tiek aizstāti ar nulli; ja arguments ir lielāks par sākotnējās virknes garumu, tas tiek aizstāts ar to. Ja vairāk beigas
Rezultāts ir virknes vērtība, nevis virknes objekts. Piemēri:
Var src = "abcdef"; var s1 = src.substring(1, 3); // "bc" var s2 = src.substring(1, -1); // "a" var s3 = src.substring(-1, 1); // "a"
Metode sup: virknes vērtība garuma īpašums Sintakse .
Atbalsts: jauna rinda
Metode : Internet Explorer Atbalstīts no versijas 5.5. Netscape Navigator Netiek atbalstīts. uzLocaleLowerCase
Atbalsts: jauna rinda
Metode .toLocaleUpperCase() toLocaleUpperCase
Metode .toLowerCase() mazajiem burtiem
atgriež jaunu virkni, kurā visi sākotnējās virknes burti ir aizstāti ar mazajiem burtiem. Pārējās sākotnējās virknes rakstzīmes netiek mainītas. Sākotnējā virkne paliek nemainīga. Piemēram, priekšraksts document.write("String object".toLowerCase()) izdrukās virknes objektu pārlūkprogrammas ekrānā. Kad es rakstu javascript, man bieži ir jāatsaucas uz meklētājprogrammas
, lai precizētu metožu sintaksi (un secību, argumentu definīciju), strādājot ar virknēm.
Pārvērst par virkni
Var myNumber = 24; // 24 var myString = myNumber.toString(); // "24"
Varat pārvērst skaitli, Būla vērtību vai objektu par virkni.
Var myNumber = 24; // 24 var myString = String(mansNumurs); // "24"
Nikolass Zakass saka: "Ja neesat pārliecināts par vērtību (null vai undefined), izmantojiet funkciju String(), jo tā atgriež virkni neatkarīgi no mainīgā veida."
nenoteikts nozīmē, ka mainīgajam nav piešķirta nekāda vērtība, a null, - ka tai ir piešķirta tukša vērtība (var teikt, ka null ir definēts kā tukšs objekts).
Lai sadalītu virkni apakšvirkņu masīvā, varat izmantot split() metodi:
Var myString = "coming,at,at,the,commas";
var substringArray = myString.split(","); // ["nāk", "apart", "at", "the", "commas"] var arrayLimited = myString.split(",", 3); // ["nāk", "atšķiras", "pie"]
Iegūstiet auklas garumu
Izmantojot rekvizītu garums, jūs varat atrast unikoda rakstzīmju skaitu virknē:
Definējiet apakšvirkni virknē
Ir divi veidi, kā sasniegt savu plānu:
Izmantojiet indexOf() :
Var stringOne = "Džonijs Valdo Harisons Valdo";
var wheresWaldo = stringOne.indexOf("Valdo"); // 7
Metode indexOf() meklē apakšvirkni (pirmais nodotais arguments) virknē (no virknes sākuma) un atgriež pirmās rakstzīmes pozīciju, no kuras apakšvirkne sāka parādīties virknē.
Izmantojiet lastIndexOf() :
Var stringOne = "Džonijs Valdo Harisons Valdo";
Metode lastIndexOf() dara visu to pašu, izņemot to, ka tā meklē pēdējo apakšvirkni, kas parādās virknē.
Ja apakšvirkne netiek atrasta, abas metodes atgriež -1. Otrais izvēles arguments norāda pozīciju virknē, kurā vēlaties sākt meklēšanu. Tātad, ja indekss() metodes otrais arguments ir 5, tad meklēšana sāksies no 5. rakstzīmes, un rakstzīmes 0-4 tiks ignorētas. Attiecībā uz lastIndexOf() arī tad, ja otrais arguments ir 5, meklēšana tiks sākta pretējā virzienā, ignorējot 6. un augstākas rakstzīmes.
Kā nomainīt daļu no virknes
Lai aizstātu visus apakšvirknes gadījumus, izmantojiet regulāro izteiksmi ar karogu "g".
Var myString = "Viņa pārdod automobiļu korpusus automobiļu krastā";
var newString = myString.replace(/automotive/g, "jūra");
Otrais arguments var ietvert apakšvirkni vai funkciju, kas jāaizstāj.
Atrodiet varoni noteiktā vietā
Lai uzzinātu, kura rakstzīme atrodas noteiktā vietā, varat izmantot metodi charAt():
Var myString = "Spalvas putni";
var whatsAtSeven = myString.charAt(7); // "f"
Kā tas bieži notiek javascript, pirmā pozīcija sākas ar 0, nevis 1.
Var myString = "Spalvas putni";
var whatsAtSeven = myString.charCodeAt(7); // "102" var whatsAtEleven = myString.charCodeAt(11); // "70"
Ņemiet vērā, ka kods lielajiem burtiem (11. pozīcija) atšķiras no tā paša burta koda, bet mazajiem burtiem (7. pozīcija).
Virknes savienošana javascript
Var stringOne = "Knibb High football"; var stringTwo = stringOne.concat("noteikumi."); // "Knibb High futbola noteikumi" Uz concat () var nodot vairākas virknes, un iegūtā virkne tiks parādīta secībā, kādā tās tika pievienotas metodei concat ().
Var stringOne = "Knibb";
var stringTwo = "Augsta";
var stringThree = "futbols";
var stringFour = "noteikumi.";
var finalString = stringOne.concat(stringTwo, virkneTrīs, stringFour);
console.log(finalString); // "Knibb augstie futbola noteikumi."
Var stringOne = "abcdefghijklmnopqrstuvwxyz";
var stringTwo = stringOne.substr(5, 10); // "fghijklmno" Substr metodei pirmais arguments norāda arī rakstzīmes pozīciju, ar kuru sākas apakšvirkne. Otrais arguments nav obligāts. Bet tajā pašā laikā otrais arguments norāda rakstzīmju skaitu, kas jāiekļauj apakšvirknē, sākot no pozīcijas, ko mēs jau definējām pirmajā argumentā.Šī tehnika
Virknes pārveidošana par mazajiem vai lielajiem burtiem JavaScript
Ir četri veidi, kā veikt nepieciešamos reklāmguvumus. Divi, lai pārvērstu virknes rakstzīmes par lielajiem burtiem.
Var stringOne = "Runājiet, es jūs nedzirdu."; var stringTwo = stringOne.toLocaleUpperCase(); // "RUNĀ, ES NEdzirdu" var stringThree = stringOne.toUpperCase(); // "RUNĀ, ES TEVI NEdzirdu"
Un divi, lai pārvērstu virkni uz mazajiem burtiem:
Var stringOne = "JUMS NAV"JĀKliedz"; var stringTwo = stringOne.toLocaleLowerCase(); // "jums nav jākliedz" var stringThree = stringOne.toLowerCase(); // "tev nav jākliedz"
Modeļa atbilstība javascript
Varat pārbaudīt raksta klātbūtni virknē, izmantojot 2 metodes.
Metode match() tiek izsaukta virknes objektā, nododot regulāro izteiksmi kā argumentu metodei match().
Var myString = "Cik daudz koksnes varētu ievilkt koka patrona";
var myPattern = /.ood/;
Abas metodes atgriež pirmo atbilstošo gadījumu. Ja neviena atbilstība netiek atrasta, tiks atgriezta NULL. Ja regulārajai izteiksmei ir karodziņš "g", rezultāts būs masīvs, kurā būs visas atbilstības.
Varat arī izmantot meklēšanas () metodi, kas kā argumentu izmanto regulāro izteiksmi un atgriež pirmā atbilstošā modeļa sākuma pozīciju.
Var myString = "Pieņemt";
var patternLocation = myString.search(/ume/); // 3
Divu virkņu salīdzināšana vēlākai šķirošanai
Lai salīdzinātu divas virknes, pamatojoties uz lokalizācijas kārtošanas secību, varat izmantot localeCompare metodi. LocaleCompare metode atgriež trīs iespējamās vērtības.
MyString = "vista"; var myStringTwo = "ola"; var whichCameFirst = myString.localeSalīdzināt(manaStringTwo); // -1 (izņemot Chrome, kas atgriež -2) whichCameFirst = myString.localeCompare("vista"); // 0 whichCameFirst = myString.localeCompare("ābols"); // 1 (Chrome atgriež 2)