Metoda JavaScript String match () vraća rezultat podudaranja niza s regularnim izrazom.
Sintaksa match()
metode je:
str.match(regexp)
Ovdje je str niz.
parametri match ()
match()
Postupak uzima u:
- regexp - objekt regularnog izraza (argument se implicitno pretvara
RegExp
ako nijeRegExp
objekt)
Napomena: Ako ne date nikakve parametre, match()
vraća se ("")
.
Povratna vrijednost iz match ()
- Vraća sadržaj
Array
koji sadrži podudaranja, po jednu stavku za svako podudaranje. - Vraća
null
ako nije pronađeno podudaranje.
Primjer 1: Korištenje match ()
const string = "I am learning JavaScript not Java."; const re = /Java/; let result = string.match(re); console.log("Result of matching /Java/ :"); console.log(result); const re1 = /Java/g; let result1 = string.match(re1); console.log("Result of matching /Java/ with g flag:") console.log(result1);
Izlaz
Rezultat podudaranja / Java /: ('Java', indeks: 14, ulaz: 'Učim JavaScript, a ne Java.', Grupe: nedefinirano) Rezultat podudaranja / Java / s g zastavicom: ('Java', 'Java' )
Ovdje možemo vidjeti da bez upotrebe g
zastavice kao rezultat dobivamo samo prvo podudaranje, ali s detaljnim informacijama poput indeksa, unosa i grupa.
Napomena : Ako regularni izraz ne uključuje g
zastavicu, str.match()
vratit će samo prvo podudaranje slično RegExp.exec()
. Vraćeni artikl imat će i sljedeća dodatna svojstva:
groups
- Objekt imenovanih grupa za hvatanje koje imaju ključeve kao imena i vrijednosti kao uhvaćene podudarnosti.index
- indeks pretraživanja gdje je pronađen rezultat.input
- Kopija niza za pretraživanje.
Primjer 2: Podudaranje odjeljaka u nizu
const string = "My name is Albert. YOUR NAME is Soyuj."; // expression matches case-insensitive "name is"+ any alphabets till period (.) const re = /namesiss(a-zA-Z)+./gi; let result = string.match(re); console.log(result); // ( 'name is Albert.', 'NAME is Soyuj.' ) // using named capturing groups const re1 = /namesiss(?(a-zA-Z)+)./i; let found = string.match(re1); console.log(found.groups); // (name: "Albert")
Izlaz
('ime je Albert.', 'IME je Soyuj.') (ime: "Albert")
Ovdje smo upotrijebili regularni izraz za podudaranje određenog dijela niza. Također možemo zabilježiti određene grupe u podudaranju koristeći sintaksu kao što je gore prikazano.
Preporučeno čitanje: JavaScript String matchAll ()