Metode JavaScript String matchAll () atgriež rezultātu atkārtojumu, kas saistīts ar virknes atbilstību regulārajai izteiksmei.
Metodes sintakse matchAll()ir šāda:
str.matchAll(regexp)
Šeit strir virkne.
matchAll () parametri
matchAll()Metode ņem in:
- regexp - regulāras izteiksmes objekts (arguments netieši tiek pārveidots par,
RegExpja tas navRegExpobjekts)
Piezīme: Ja RegExpobjektam nav /gkarodziņa, TypeErrortiks izmests a.
Atgriezeniskā vērtība no matchAll ()
- Atgriež atkārtotāju, kurā ir sērkociņi, ieskaitot tveršanas grupas.
Piezīme . Katram atgrieztā iteratora vienumam būs šādas papildu īpašības:
groups- Nosauktu tveršanas grupu objekts, kura atslēgas ir nosaukumi un vērtības, kā tvertie sakrīt.index- meklēšanas indekss, kur tika atrasts rezultāts.input- Meklēšanas virknes kopija.
1. piemērs: matchAll () izmantošana
const string = "I am learning JavaScript not Java."; const re = /Java(a-z)*/gi; let result = string.matchAll(re); for (match of result) ( console.log(match); )
Rezultāts
('JavaScript', indekss: 14, ievade: 'Es mācos JavaScript, nevis Java.', Grupas: nedefinēts) ('Java', indekss: 29, ievade: 'Es mācos JavaScript, nevis Java.', Grupas: nedefinēts)
Šeit atgrieztais atkārtotājs tiek atkārtots, izmantojot for… ofcilpu.
2. piemērs: matchAll izmantošana grupu tveršanai
const string = "My name is Albert. YOUR NAME is Soyuj."; // expression matches case-insensitive "name is"+ any alphabets till period (.) // using named capturing groups const re = /namesiss(?(a-zA-Z)+)./gi; let found = string.matchAll(re); for (const match of found)( console.log(`Found "$(match(0))" at index $(match.index). Captured name = $(match.groups('name'))`) )
Rezultāts
Atrasts "vārds ir Alberts". 3. indeksā. Uzņemtais vārds = Alberts Atrasts "NAME is Soyuj". indeksā 24. Tvertais vārds = Sojuj
Šeit mēs izmantojām regulāru izteiksmi, lai saskaņotu noteiktu virknes daļu. Mēs varam tvert dažas grupas mačā, izmantojot matchAll()labāk nekā match().
Ieteicamā literatūra: JavaScript virknes atbilstība ()








